Feature: Add country dropdown to player registration #229
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/basketball-api#229
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Type
Feature
Lineage
Standalone — discovered during session reviewing registration form. 8 of 55 players are international (Turkey, Bahamas, England, Brazil, Tanzania, France). Country data is buried in free-text hometown field.
Repo
forgejo_admin/basketball-apiUser Story
As an admin
I want to see each player's country of origin as structured data
So that I can identify and support international players in the program
Context
The program has players from 6+ countries. Currently country is only discoverable by reading the free-text
hometownfield (e.g. "Turkey,Istanbul", "Nassau Bahamas", "Bath, England"). Marcus needs a filterable field. Adding acountrycolumn with ISO country codes gives structured data without disrupting the existing hometown free text.Default to "US" so domestic families have zero extra friction. International families see the dropdown and know they're welcome.
File Targets
Files to modify:
src/basketball_api/models.py— addcountrycolumn to Player model (nullable, default "US")alembic/versions/028_add_player_country.py— migration to add columnsrc/basketball_api/routes/register.py— acceptcountryin registration formsrc/basketball_api/routes/public.py— includecountryin PublicPlayerResponsesrc/basketball_api/routes/admin.py— includecountryin admin player listtests/— update relevant testsFiles NOT to touch:
hometownfield — keep as-is, free text is fine for displayAcceptance Criteria
countrycolumn (VARCHAR, default "US", nullable)countryfieldcountryper playercountryTest Expectations
pytest tests/ -vConstraints
Checklist
Related
project-westside-basketball