Django forms 在django admin和modelform中使用多个select实现复选框?
我对django还比较陌生,所以找不到一种方法在我的自定义modelforms和django admin中实现多个select-in复选框。尝试了django文档,但仍然找不到解决方案? 短暂性脑缺血发作 views.pyDjango forms 在django admin和modelform中使用多个select实现复选框?,django-forms,django-views,Django Forms,Django Views,我对django还比较陌生,所以找不到一种方法在我的自定义modelforms和django admin中实现多个select-in复选框。尝试了django文档,但仍然找不到解决方案? 短暂性脑缺血发作 views.py class ProjectCreate(CreateView): model = Project fields = ['projectid', 'title', 'description', 'startdate', 'enddate', 'cost', 'Project_t
class ProjectCreate(CreateView):
model = Project
fields = ['projectid', 'title', 'description', 'startdate', 'enddate', 'cost', 'Project_type',
'employeeid', 'technologies', 'clientid', 'document']
class ProjectUpdate(UpdateView):
model = Project
fields = ['projectid', 'title', 'description', 'startdate', 'enddate', 'cost', 'Project_type',
'employeeid', 'technologies', 'clientid']
form-template.py
{% for fields in form %}
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<span class="text-danger small">{{ fields.errors }}</span>
</div>
<label class="control-label col-sm-2">{{ fields.label_tag }}</label>
<div class="col-sm-10">{{ fields }}</div>
</div>
{% endfor %}
{%格式的字段%}
{{fields.errors}}
{{fields.label_tag}
{{fields}}
{%endfor%}
我们可以使用
pip安装django multiselectfield
Models.py
中,我们需要导入multiselectfield
,然后使用multiselectfield
作为模式字段并传递所需参数
from django.db import models
from multiselectfield import MultiSelectField
MY_CHOICES = ((1, 'Value1'),
(2, 'Value2'),
(3, 'Value3'),
(4, 'Value4'),
(5, 'Value5'))
#choices can be a list also
class MyModel(models.Model):
#....
my_field = MultiSelectField(choices=MY_CHOICES,
max_choices=3,
max_length=3)
现在,在管理面板中,当您打开
MyModel表单时,您将看到5个复选框,其中您最多只能选择3个定义的max\u choices=3
如果使用模板呈现modelform
,则只需在Forms.py
中指定字段
如果您从另一个表中获取下拉数据,请参考此