【发布时间】:2020-09-29 05:15:35
【问题描述】:
我有一个 django 模型,它有一个自引用多对多字段,如下所示。
class Product(ModelBase):
name = models.CharField(max_length=1000)
category = models.ForeignKey(Category, on_delete=models.DO_NOTHING)
company = models.ForeignKey(Company, on_delete=models.DO_NOTHING)
alternatives = models.ManyToManyField('self', symmetrical=False, blank=True)
我对 django 管理表单将替代选项列为多选列表框并不特别满意,因为对于大量产品,选择一个或多个替代产品将变得乏味。 有没有办法可以丰富这种用户体验,我已经查看了 django-advanced-filters 但它不适用于 django 3。基本上,如果我可以有一个预先输入的搜索来过滤列表中的项目并限制初始根据所选类别列出。
----更新---- 管理员.py
@admin.register(Category)
class CategoryAdmin(admin.ModelAdmin):
search_fields = ['name', ]
@admin.register(Company)
class CompanyAdmin(admin.ModelAdmin):
search_fields = ['name', ]
list_display = ['name', 'website', ]
@admin.register(Product)
class ProductAdmin(admin.ModelAdmin):
search_fields = ['name', ]
list_filter = ['category', ]
list_display = ['name', 'category', 'company', ]
感谢您的帮助。
【问题讨论】:
-
你能分享你的
admin.py文件吗?
标签: django django-admin