gpt4 book ai didi

尝试在管理表单上显示 DateTimeField 时出现 Django 异常

转载 作者:行者123 更新时间:2023-12-02 08:39:22 26 4
gpt4 key购买 nike

我有一个定义日期时间字段的模型:

dateAdded = models.DateTimeField("Date Added", auto_now_add=True)

在我的 ModelAdmin 子类中,我试图在以下字段集中显示该字段:

fieldsets = (
(None, {
'fields': (
("modelId", "altModelIds", "modelName", "dateAdded"),
("manufacturer", "protocol", "category"),
("versionAdded", "proOnly", "published", "discontinued"),
"notes"
)
}),

但我收到以下错误:

FieldError: Unknown field(s) (dateAdded) specified for Device

不过,有趣的是,当我将它添加到 list_display 时:

list_display = ("modelName", "published", "modelId", "altModelIds", "manufacturer", "protocol", "category", "dateAdded")

它工作正常。我确定我只是在做一些愚蠢的事情(我已经离开 Django 大约 8 个月了)但我想不通。任何帮助将不胜感激。

最佳答案

因为标记为 auto_now_add 的 datetimefield 模型字段类型也被隐式指定为 editable=False,因此它们不会显示在更改表单中。如果您在 ModelAdmin 类中的字段集中指定该字段,则它显然不被视为在模型中,因为它是只读的。实际上是愚蠢的错误消息,因为它在模型中,但事实就是如此。

现在弄清楚如何在模型的更改表单上以只读方式显示该字段(但这是一个不同的问题)。

关于尝试在管理表单上显示 DateTimeField 时出现 Django 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17974012/

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