我正在尝试找出在django中实现表单的最佳方法,该表单上有两个选择字段,其中一个影响另一个中可用的选项。示例 - 表单字段1是单选按钮(可以只选择一个选项),称为“菜单”,第二个是多选字段,称为“菜单”。如果你从'cuisine'中选择'french',那么你会在菜单列表中找到法式菜肴,但如果你选择'chinese',你会得到不同的选择。
如何在表单验证过程中使用此服务器端。如何“绑定”两个控件,以便只接受与烹饪选项相关的菜肴?
我如何渲染这个 - 我应该为每种类型的菜肴传递一个ModelForm,还是只有一个菜单ModelForm,其中包含所有内容,只是在客户端显示/隐藏内容?
所有菜单选项都存储在数据库中并作为固定装置加载,菜肴硬编码到应用程序中:
CUISINE = ((0,'French'),(1,'Chinese'),(2,'Italian'))
class MenuItem(models.Model):
description = models.CharField(max_length=200)
cuisine = models.IntegerField('Cuisine', choices=CUISINE)
答案 0 :(得分:0)
要进行渲染,您可以使用django-selectable或django-autocomplete-light,
对于服务器端验证,django拥有completely documented。