Django search_fields外键不起作用

标签 django django-admin

我有这两个模型:

class Module(models.Model):
    id = models.AutoField(primary_key=True)
    name = models.CharField(unique=True, max_length=255)

class Subject(models.Model):
    id = models.AutoField(primary_key=True)
    module = models.ForeignKey(Module)

然后我创建了 ModelAdmin:
class SubjectAdmin(admin.ModelAdmin):
    list_display = ('module', 'name', 'enabled',)
    list_filter = ('module', 'name',)
    search_fields = ('module', 'name',)

但我无法按模块过滤或搜索。

最佳答案

您注册了 ModelAdmin 吗?

admin.site.register(Subject, SubjectAdmin)

您可能还想尝试给模块一个 __unicode__方法,或使用关系跨越。
list_filter = ('module__name', 'name',)

# or...
# within Module
def __unicode__(self):
    return self.name

关于Django search_fields外键不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5768165/

相关文章:

django - 如何增加 PostgreSQL 文本索引的容量?

python - 让 HTML 在 django 管理显示中换行

Django:通过 Django Admin 将用户添加到组

django 管理员在内联覆盖保存方法?

python - django 管理站点 - 过滤用户可用的对象

django - 覆盖 AppConfig.ready()

python - Postgres docker-image 不会运行也不会启动

python - Django CMS - 无法通过 cmsplugin_filer_image 上传图像

python - 详细 View 中的 Django 管理操作?

python - Heroku Django 应用程序错误 : Worker Timout Issue (H12)