Django - Choices vs Models (FKs)
models enforces constraint via the database. choices enforces constraint via the code. Which you choose depends on who you want to select the choices.
Lets say I'd like to give an user options to pick from and ensure that the submitted values are available options.
I've been reading the documentation and it seems to me that: if your values won't change then use choices -- if your data is dynamic then use models.
I'm a bit unsure though, shouldn't models be chosen over choices since they enforce some kind of constraint in the DB?