Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将ModelChoiceSet添加到其后面的inlineformset';s生成_Python_Django - Fatal编程技术网

Python 将ModelChoiceSet添加到其后面的inlineformset';s生成

Python 将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

我有一个基于非常简单的模型表单的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

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
         })
您能显示有问题的代码(视图和模型)吗?当然可以--已编辑。我只是在第一次尝试时没有把它包括在内,因为我一般都会问它是否可能,因为我在任何地方都找不到关于它的信息。