【问题标题】:Display User's 'is_active' status in TabularInline Django在 TabularInline Django 中显示用户的“is_active”状态
【发布时间】:2021-02-16 07:04:41
【问题描述】:

我有一个 Client 对象,它有一个 User 和一个 Company 对象作为 FK

class Client(models.Model):
user = models.OneToOneField(User)
company = models.ForeignKey(Company, blank=True, null=True)

在我的 CompanyAdmin 中,我希望将所有客户端的列表作为 TabularInline,包括每个客户端的 active 状态(基于用户对象)

class CompanyClients(admin.TabularInline):
    model = Client
    fields = ('user', 'master')

class CompanyAdmin(admin.ModelAdmin):
    inlines = [CompanyClients]

我想在我的 TabularInline 中添加一列以指示该用户是否处于活动状态。我尝试在我的字段中使用'user__is_active',但出现此错误:

Unknown field(s) (user__is_active) specified for Client

我只想要一个指示,即使是只读的(我尝试通过放置 readonly_fields 并且它也不起作用),而不是希望从表格表单中保存/编辑每个客户端用户的活动状态值。

我该如何处理?提前致谢。

【问题讨论】:

  • 能否请您添加您为获取用户所做的查询。
  • 我没有进行任何查询来获取用户,它是客户端对象中的一个字段,而 Django 只是根据变量名称获取它。
  • 请分享您的用户和公司模式,以更好地解决问题。

标签: django django-models django-forms django-admin


【解决方案1】:
class CompanyClients(admin.TabularInline):
     model = Client
     fields = ('user', 'master','user__active)

user__active

【讨论】:

  • 我收到相同的错误 Unknown field(s) (user__active) specified for Client
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-02
  • 1970-01-01
  • 2012-05-02
  • 2020-06-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多