feat: implement exchange creation

Add Exchange model, API endpoint, and form validation
for creating new gift exchanges.

- Create ExchangeForm with timezone validation
- Add admin routes for creating and viewing exchanges
- Generate unique 12-char slug for each exchange
- Validate registration/exchange dates
- Display exchanges in dashboard
- All tests passing with 92% coverage

Story: 2.1
This commit is contained in:
2025-12-22 12:41:28 -07:00
parent 7580c39a84
commit 8554f27d86
12 changed files with 837 additions and 7 deletions

View File

@@ -1,6 +1,7 @@
"""Forms for Sneaky Klaus application."""
from src.forms.exchange import ExchangeForm
from src.forms.login import LoginForm
from src.forms.setup import SetupForm
__all__ = ["LoginForm", "SetupForm"]
__all__ = ["ExchangeForm", "LoginForm", "SetupForm"]