gpt4 book ai didi

django - 在 Django 的管理模型详细信息中显示模型父字段

转载 作者:行者123 更新时间:2023-12-04 04:13:18 26 4
gpt4 key购买 nike

我让我的大部分模型继承自:

class TimeStampedModel(models.Model):
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)

class Meta:
abstract = True
get_latest_by = 'updated_at'

像这样:

class Sale(TimeStampedModel):
ip_address = models.GenericIPAddressField(null=True)
# ...

但是,如果我访问 /admin/myapp/sale/123/change/,我只会看到 ip_address 字段。

如何查看 created_atupdated_at 字段?可能不需要在列表中指定 Sale 的每个字段。

最佳答案

您现在无法显示此字段,因为当您将 auto_now_add 添加到模型中时,它还会将 editable=False 设置到您的字段中。因此,您的字段是只读的。来自 docs :

As currently implemented, setting auto_now or auto_now_add to True will cause the field to have editable=False and blank=True set.

要在管理界面中显示任何只读字段,您必须在管理 View 中添加 readonly_fields = ['field_name'] 定义,如下所示:

@admin.register(Sale)
class SaleAdmin(admin.ModelAdmin):
readonly_fields = ['created_at','updated_at']

关于django - 在 Django 的管理模型详细信息中显示模型父字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61261513/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com