在此引用Django docs,我已设置以下内容:
Category_Choices = (
('Food', (
('burger', 'hamburger'),
('pizza', 'pizza'),
),
('Drink', (
('soda', 'soda'),
('water', 'water'),
('milk', 'milk'),
('beer', 'beer'),
),
('Dessert' , (
('ic', 'ice cream'),
('pie', 'pie'),
('cake', 'cake'),
),
)
我理解引用一个初始元组:
choice = models.CharField(max_length=10, choices=Category_Choices)
但是我如何将其仅限于食物?如果我有一个选项列表,用户只选择食物,饮料或甜点,我如何将第二个选择列表限制为仅限食物项目,或仅限饮料项目等? Django文档不涉及该部分。提前致谢
答案 0 :(得分:1)
检查链接的文档会产生此响应:
“但是如果你发现你自己选择了动态的选择,你可能最好使用带有ForeignKey的正确数据库表。选择意味着静态数据不会有太大变化,如果有的话。”
选择字段不是为了给出动态行为,即只显示某些选择的子集。
我的建议是创建另一个模型对象以容纳Food列表。