I have a django core app called \"foocore\".
There are several optional pluging-like apps. For example \"superfoo\".
In my case every plugin adds a new choice in
See this bug report and discussion for more info: https://code.djangoproject.com/ticket/22837
The proposed solution was to use a callable as the argument for choices, but it appears this has not been executed for fields but for forms only.
If you really need dynamic choices than a ForeignKey
is the best solution.
An alternative solution can be to add the requirement through a custom clean method for the field and/or creating a custom form. Form fields do support callable choices
.
See this answer for more info: https://stackoverflow.com/a/33514551/54017