chera enum estefade nakardin baraye choice option
سلام وقت بخیر
ممنون میشم کد مد نظرتون رو ارسال کنین تا بهتر راهنماییتون کنم
class StatusAEnum(Enum): OK = 'ok' PENDING = 'pending' FAILED = 'failed' class StatusBEnum(Enum): WAITING = 'waiting' CANCELLED = 'cancelled' READY = 'ready' class SomeModelWithChoices(models.Model): status_A = EnumChoiceField( StatusAEnum, default=StatusAEnum.PENDING ) status_B = EnumChoiceField( StatusBEnum, default=StatusBEnum.WAITING )
https://www.hacksoft.io/blog/introducing-django-enum-choices-2
ya
from django.utils.translation import gettext_lazy as _ class Student(models.Model): class YearInSchool(models.TextChoices): FRESHMAN = 'FR', _('Freshman') SOPHOMORE = 'SO', _('Sophomore') JUNIOR = 'JR', _('Junior') SENIOR = 'SR', _('Senior') GRADUATE = 'GR', _('Graduate') year_in_school = models.CharField( max_length=2, choices=YearInSchool.choices, default=YearInSchool.FRESHMAN, )
https://stackoverflow.com/questions/54802616/how-can-one-use-enums-as-a-choice-field-in-a-django-model
درود وقت بخیر
بسته به نیازمندیهای پروژه و best practiceهای پیاده سازی شده در پروژه ، چنین مسائلی تصمیم گرفته میشه .
در هر صورت هر دو درست هستش. تنها چیزی که اهمیت داره اینه که ببینید کدام یک حافظه کمتری مشغول میکنه در حین اجرای برنامه
موفق باشید ?