我正在使用脆弱的表单制作表单,我想知道它们是否是在字段旁边添加添加按钮的方式,类似于django-admin所做的。我目前有一个下拉列表,需要有一些内容,如果它是空的,我希望能够打开另一个表单来添加该元素。
编辑:
在forms.py
中class CourseUserForm(BaseForm):
organisers = UserFullnameChoiceField(queryset=User.objects.all(), label=_(u'Organisers'))
userlist = TypedModelMultipleChoiceField(queryset=UserList.objects.all(), label=_(u'Group'), required=False)
helper = FormHelper()
helper.layout = Layout(
'title',
'description',
'organisers',
'events',
'userlist',
FormActions(
Submit('submit', (_(u'Save'))
)
)
)
class Meta(BaseForm.Meta):
model = Course
fields = ['title', 'description', 'organisers', 'events', 'userlist']
和models.py
class Course(models.Model):
title = models.CharField(max_length=200, verbose_name=_('Title'))
description = NoInitSimpleMdeField(verbose_name=_('Description'))
events = models.ManyToManyField(Event)
organisers = models.ManyToManyField('auth.User', related_name='course_organiser', verbose_name=_('Organisers'))
created_date = models.DateTimeField(auto_now_add=True, verbose_name=_('Created Date'))
在views.py中我使用django视图通用CreateView mixin。我的模板基本上由{%crispy form%}和一些支持css等组成......
我想在事件字段旁边添加一个添加按钮,这将打开一个事件添加对话框。一旦(/ if)添加了一个事件,我希望新记录显示在下拉列表中。
编辑2:
所以我的表单使用Crispy Forms Helper,我知道我可以在crispy表单中添加按钮,但不知何故我需要允许它打开我的其他表单(最好是在模态对话框中),允许它在添加数据时刷新我的数据,并将其设置为使按钮位于多选字段旁边。请参阅django admin中的this示例(A
旁边的添加按钮)