問題
django
中如何比較優雅的對元組進行標記分類。可使用choice
字段
choice字段
# models.py
class BookTagNum(object):
OTHER = 1
SCIENCE = 2
SOCIAL_SCIENCES = 3
ECONOMIC = 4
COMPUTER = 5
class BOOK(models.Model):
TAG_NUM_CHOICE = (
(BookTagNum.OTHER, '其它'),
(BookTagNum.SCIENCE, '科學類'),
(BookTagNum.SOCIAL_SCIENCES, '社科類'),
(BookTagNum.ECONOMIC, '經濟類'),
(BookTagNum.COMPUTER, '計算機類'),
)
tag = models.IntegerField(choices=TAG_NUM_CHOICE)
在代碼中儘量不要出現固定的硬編碼,比如某個判斷條件,判斷書的分類爲:
# view.py
def get(self, request):
book = Book.obejects.filter(tag = BookTagNum.COMPUTER)