【发布时间】:2022-11-14 13:09:26
【问题描述】:
我们使用 djangoql 在我们的 django 管理面板中轻松搜索。 mixin DjangoQLSearchMixin 已添加到管理面板中的一些模型中。 有时在部署后我们会在处理程序中遇到错误 application_name/model_name/introspect/
错误:
FieldDoesNotExist 在 /admin/user/user/introspect/ Model_name 没有名为“field_name”的字段
重新启动后,错误消失。该错误无法在本地重现。
例子: “地址没有名为‘membership_requests’的字段”
@admin.register(MembershipRequest, site=admin_site)
class MembershipRequestAdmin(DjangoQLSearchMixin, admin.ModelAdmin):
list_display = ("company", "user", "request_type", "status", "created_on", "updated_on")
class MembershipRequest(PureModelMixin):
company = models.ForeignKey("constrafor.Company", on_delete=models.CASCADE, related_name="membership_requests")
user = models.ForeignKey("user.User", on_delete=models.CASCADE, related_name="membership_requests")
address = models.OneToOneField(
"constrafor.Address",
related_name="membership_requests",
on_delete=models.CASCADE,
null=True,
blank=True,
help_text="FK to constrafor.Address",
)
code = models.ForeignKey(
"constrafor.Code", on_delete=models.SET_NULL, related_name="membership_requests", blank=True, null=True
)
company_name = models.CharField(null=True, blank=True, max_length=1000)
company_phone = models.CharField(null=True, blank=True, max_length=15)
company_type = models.CharField(max_length=15, choices=Company.COMPANY_TYPE_CHOICES)
is_needed_email_verification = models.BooleanField(default=False)
status = models.CharField(
max_length=8,
choices=MembershipRequestStatus.choices,
default=MembershipRequestStatus.pending,
)
request_type = models.CharField(
max_length=10,
choices=MembershipRequestType.choices,
default=MembershipRequestType.natural,
)
【问题讨论】:
-
也遇到了这个,似乎是一个黑森错误:当你尝试研究它时它消失了。因此,您无法在本地复制它。它消失了一段时间,然后毫无逻辑地回来了。
标签: django django-admin