我有一個模型類與一些「狀態」字段,其中有choices
選項(每個選項都有自己的業務邏輯)。
根據Django的網站,這是選擇應該如何設置:django寫模型字段選擇的更好方法?
class Order:
STATUS_ACTIVE = 1
STATUS_ENDED = 2
STATUS_CANCELED = 3
ORDER_STATUS_CHOICES = ((STATUS_ACTIVE, 'Active'),
(STATUS_ENDED, 'Ended'),
(STATUS_CANCELED, 'Canceled'),)
order_status = models.IntegerField(choices=ORDER_STATUS_CHOICES)
order_status2 = models.IntegerField(choices=ORDER_STATUS2_CHOICES)
的問題是,它讓你感覺很糟垃圾郵件我的模型類的許多領域有很多選擇,但它可能以某種方式封裝它,但仍然保留這些選擇裏面模型類?
我使用一個內部類像
class OrderStatus:
STATUS_ACTIVE = 1
STATUS_ENDED = 2
但是從內部模型類引發錯誤引用Order.OrderStatus.STATUS_ACTIVE嘗試。
爲什麼要保持它在模型內? –
導致這些選擇與模型字段相關?另外根據django網站,最好在課堂上做出選擇..但是如果我看到它們變大,我可能會將它們分開 – user3599803