ModelMultipleChoiceField 字段不返回任何值
ModelMultipleChoiceField field returning no value
class DocumentForm(forms.ModelForm):
model = Document
starred_by = forms.ModelMultipleChoiceField(queryset=User.objects.all())
class Meta:
widgets = {
'created_by': AutocompleteSelect(
Document._meta.get_field('created_by').remote_field,
admin.site,
attrs={'data-dropdown-auto-width': 'true'}
),
'organisation': AutocompleteSelect(
Document._meta.get_field('created_by').remote_field,
admin.site,
attrs={'data-dropdown-auto-width': 'true'}
),
'starred_by':AutocompleteSelectMultiple(
Document._meta.get_field('starred_by').remote_field,
admin.site,
attrs={'data-dropdown-auto-width': 'true'}
)
}
更新:
我已经阅读了一些关于 select2 库的内容,但我无法理解如何将它与 Django-admin 集成我的需求主要是 searchable select 外键下拉菜单和多select 多对多字段下拉菜单 但是这些字段我想要在我的应用程序的 Django 管理面板中,任何帮助都会不胜感激,提前致谢
我就是这样解决的,我使用了 Django 的本机搜索字段,它在后台使用了 Sleect2
class OrganisationAdmin(admin.ModelAdmin):
list_display = ('name','address')
autocomplete_fields = ['products']
search_fields = ['name__iexact']
# autocomplete_fields = ['']
class ProductAdmin(admin.ModelAdmin):
search_fields = ['name']
class DocumentForm(forms.ModelForm):
model = Document
starred_by = forms.ModelMultipleChoiceField(queryset=User.objects.all())
class Meta:
widgets = {
'created_by': AutocompleteSelect(
Document._meta.get_field('created_by').remote_field,
admin.site,
attrs={'data-dropdown-auto-width': 'true'}
),
'organisation': AutocompleteSelect(
Document._meta.get_field('created_by').remote_field,
admin.site,
attrs={'data-dropdown-auto-width': 'true'}
),
'starred_by':AutocompleteSelectMultiple(
Document._meta.get_field('starred_by').remote_field,
admin.site,
attrs={'data-dropdown-auto-width': 'true'}
)
}
更新:
我已经阅读了一些关于 select2 库的内容,但我无法理解如何将它与 Django-admin 集成我的需求主要是 searchable select 外键下拉菜单和多select 多对多字段下拉菜单 但是这些字段我想要在我的应用程序的 Django 管理面板中,任何帮助都会不胜感激,提前致谢
我就是这样解决的,我使用了 Django 的本机搜索字段,它在后台使用了 Sleect2
class OrganisationAdmin(admin.ModelAdmin):
list_display = ('name','address')
autocomplete_fields = ['products']
search_fields = ['name__iexact']
# autocomplete_fields = ['']
class ProductAdmin(admin.ModelAdmin):
search_fields = ['name']