python - 'list_filter[0]' 的值是指 'people__type',而不是指一个 Field
问题描述
第一次在这里问一个问题,如果我做得不完美,很抱歉。
上下文:django 中的项目,试图在我的管理面板中有一个过滤选项。
我的 model.py 文件中有这个 Charfield,我试图将其用作 admin.py 中的过滤器,但是 python 告诉我它没有引用一个非常令人困惑的字段。这是我的代码:
模型.py
class People(models.Model):
OWNER = 'owner'
TENANT = 'tenant'
TYPES = ((OWNER, 'Owner'), (TENANT, 'Tenant'))
type = models.CharField(max_length=20, choices=TYPES)
people_name = models.CharField(max_length=200)
people_surname = models.CharField(max_length=200)
people_phone_number = models.CharField(max_length=200)
people_email = models.EmailField(max_length=254)
people_occupation = models.CharField(max_length=200)
people_revenue = models.IntegerField()
people_slug = models.CharField(max_length=200, default=1)
def __str__(self):
return self.people_name
管理员.py
from django.contrib import admin from django.db import models from .models import * from tinymce.widgets import TinyMCE
#在此处注册您的模型。
class PeopleAdmin(admin.ModelAdmin):
fieldsets = [
("Type", {"fields": ["type"]}),
("Information", {"fields": ["people_name",
"people_surname",
"people_phone_number",
"people_email",
"people_occupation",
"people_revenue"]}),
("URL", {"fields": ["people_slug"]}),
]
list_filter = ('people__type',)
admin.site.register(People, PeopleAdmin)
解决方案
代替:
list_filter = ('people__type',)
和
list_filter = ('type',)
people__type
如果您尝试从外键关系过滤到字段People
上的模型,将使用。type
因此__
.
推荐阅读
- docker - Helm 中 Kubernetes 上的 Jenkins - 如何将 ssh 密钥附加到代理
- javascript - Javascript动画未显示
- vuejs2 - VueJS - 当我使用 $emit 时自定义事件不起作用
- javascript - 是否可以在 Node 模块中导出动态导入?
- bash - 打开一个新的 git-bash 终端并在其中运行命令
- security - 如何在 Contiki / Cooja 模拟器中启用 LLSEC?
- node.js - 来自 tsconfig.json 的路径在 tsc 之后不起作用
- powerbi - DirectQuery PowerBI 中的 DAX 公式兼容性 - 匹配来自另一个表的值
- excel - VBA,IF逻辑错误,如何退出
- typedoc - 如何自定义 TypeDoc 主题?