About Choices for Model Fields
For a model field with choices defined dynamically in the settings, file system, or some API, you cannot use the choices attribute of the model field itself.
Instead, you must create a model form and use the choices attribute for the form field.
The reason is that choices in the model are reflected in the migrations, so each change in the dynamic source would cause the creation of new migration. That is not very feasible for reusable apps.
Tips and Tricks Programming Architecture Django 4.2 Django 3.2 Django 2.2
Django/Python Consulting
If you have a specific Django challenge or integration you'd like to solve, I'd be happy to help. Book a free 30-minute call to discuss your project, see if we're a good fit, and explore the best approach for your needs. After the call, you'll receive a tailored cost estimate based on what we discuss.
Also by me
Django Messaging
For Django-based social platforms.
Django Paddle Subscriptions
For Django-based SaaS projects.
Django GDPR Cookie Consent
For Django websites that use cookies.