from dal import autocomplete
class many_to_many_field_Autocomplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = *custom query if needed*
#search option
if self.q:
qs = qs.filter(name__icontains=self.q)
return qs
然后将小部件添加到网址.py文件
^{pr2}$
然后将自定义小部件添加到表单类内部的字段中
class VersionForm(forms.ModelForm):
class Meta:
model = model_name
fields = '__all__'
widgets = {
'many_to_many_field_name': autocomplete.ModelSelect2Multiple(url='model-autocomplete'),
}
对于任何和我有同样问题的人。我解决这个问题的方法是使用autocomplete light为多对多字段制作了自己的自定义小部件。这仍然允许选择多个,但允许选择一个更小的字段,其大小与charField相同。在
然后将小部件添加到网址.py文件
^{pr2}$然后将自定义小部件添加到表单类内部的字段中
相关问题 更多 >
编程相关推荐