使用django自动完成灯和表单工具预览

时间:2018-01-12 11:45:36

标签: django django-forms

我尝试在管理面板外部使用django自动完成灯和表单工具。我完成了在管理面板中使用自动完成功能,并在django表单工具中使用常规表单。但最后一步,在管理面板外部使用自动完成功能将无效。

这是来自我的forms.py:

class PersonForm(forms.ModelForm):
    class Meta:
        model = Person
        fields = ('user',)
        widgets = {
            'user': autocomplete.ModelSelect2(url='autocomplete-person')
        }
[...]
class MessageForm(forms.Form):
    user = PersonForm()

我猜错误必须在这里,但我不确定。我认为,这应该做什么: *继承自ModelForm *将小部件更改为适合的完整小部件 *使用正确的模型和字段 *在MessageForm中应该使用它。

相反,屏幕上没有任何鞋子。有人可以帮忙吗?如有必要,我可以提供代码的其他部分。

1 个答案:

答案 0 :(得分:1)

ModelChoiceField

你不能像这样在另一个表单中实例化一个表单。

相反,请尝试在user字段中使用class MessageForm(forms.Form): user = forms.ModelChoiceField(queryset=Person.objects.all(), widget=autocomplete.ModelSelect2(url='autocomplete-person')) ,并在其中设置小部件:

{{1}}