-
Mahmoud Aglan authored
Three things a football academy keeps about a player that had nowhere to live, found while mapping a 495-row roster exported from a club's previous system. jersey_name is not the player's name. "Mohamed Sherif Mikkawi" wears "Mikkawi", and across 495 players not one shirt name equalled the full name — so it cannot be derived and has to be stored. product_customizations can already ask for it at the till, but that answer belongs to one sale and freezes onto that invoice; the club still needs to know what this player's shirt says, before and after any particular kit is bought. school_name is asked at registration everywhere and is what an academy plans term times and school fixtures around. previous_clubs is free text on purpose. A transfer history is a sentence — "Wadi Degla then Zed" — not a foreign key, and a clubs table would force the desk to resolve every spelling before it could record anything at all. The same roster spells one club four ways. Full slice: migration, model, service, form, show view. All three nullable and additive, each guarded by hasColumn, so the migration is safe against every populated tenant and nothing reads them until something writes them. Co-Authored-By:Claude Opus 5 (1M context) <noreply@anthropic.com>
25e2be96
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| blueprints | ||
| factories | ||
| migrations | ||
| seeders | ||
| .gitignore |