Django-Autocomplete-Light v3小部件不起作用

时间:2016-02-09 09:34:00

标签: python django django-autocomplete-light

所以我按照教程说的做了一切,我已经成功注册了自动完成视图,当我转到正确的URL时,我可以看到查询集以json格式显示。但是我无法使表单小部件起作用。

如果我的表单如下:

class ProductsImportForm(ModelForm):
    brand = forms.ModelChoiceField(queryset=Brands.objects.all(), label=_('Brand'))
    filename = forms.FileField(label=_('Filename'))
    fileType = forms.ModelChoiceField(queryset=FileType.objects.all(), label=_('File type'))

    class Meta:
        model = ProductsImport
        fields = ['brand', 'filename']
        widgets = {
            'brand': autocomplete.ModelSelect2(url='brand_autocomplete')
        }

我页面上的选择字段看起来与以前一样,没有任何花哨的自动填充。

现在,当我从Meta删除小部件并将其移到此处时:

brand = forms.ModelChoiceField(queryset=Brands.objects.all(), label=_('Brand'), widget = autocomplete.ModelSelect2(url='brand_autocomplete'))

我收到此错误:

Reverse for 'brand_autocomplete' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

我该如何解决?我真的需要在我的页面上有这个自动填充字段,因为我浏览了数百个条目。

1 个答案:

答案 0 :(得分:1)

这不是DAL问题,而是Django问题。它无法反转名称为“brand_autocomplete”的网址,因为它未在Django中注册。

有关详细信息,请参阅Django's documentation on the URL Dispatcher