Python 将ModelChoiceSet添加到其后面的inlineformset';s生成
我有一个基于非常简单的模型表单的inlineformset。我想要一种方法将choiceset添加到表单的一个字段中,但我想在动态生成choiceset时从views.py文件中执行此操作。这可能吗?Python2.7,Django1.5 models.pyPython 将ModelChoiceSet添加到其后面的inlineformset';s生成,python,django,Python,Django,我有一个基于非常简单的模型表单的inlineformset。我想要一种方法将choiceset添加到表单的一个字段中,但我想在动态生成choiceset时从views.py文件中执行此操作。这可能吗?Python2.7,Django1.5 models.py class RoleForm(ModelForm): class Meta: model = Role fields = ['role_type', 'user', 'item'] views.py
class RoleForm(ModelForm):
class Meta:
model = Role
fields = ['role_type', 'user', 'item']
views.py
def new(request):
''' Create a new application '''
user = request.user
associatedRoleTypes = getAssociatedRoleTypes(Application)
#^^^this returns a queryset, and is what I want model_choices to be equal to
RoleFormSetFactory = inlineformset_factory(Application, Role, can_delete=False, form=RoleForm)
if request.method == 'POST':
applicationForm = ApplicationForm(request.POST)
if applicationForm.is_valid():
new_application = applicationForm.save()
roleInlineFormSet = RoleFormSetFactory(request.POST, instance = new_application)
if roleInlineFormSet.is_valid():
roleInlineFormSet.save()
else:
print roleInlineFormSet.errors
return redirect(reverse('index'))
else:
applicationForm = ApplicationForm()
roleInlineFormSet = RoleFormSetFactory()
return render(request, 'who/editapp.html',
{'roleInlineFormSet': roleInlineFormSet,
'applicationForm': applicationForm
})
您能显示有问题的代码(视图和模型)吗?当然可以--已编辑。我只是在第一次尝试时没有把它包括在内,因为我一般都会问它是否可能,因为我在任何地方都找不到关于它的信息。