DateTimeField在管理系统中不显示

发布于 2021-01-29 18:13:45

为什么我的“日期”字段没有出现在管理系统中?

在我的admin.py文件中

from django.contrib import admin
from glasses.players.models import *
admin.site.register(Rating)

评分模型有一个名为“日期”的字段,看起来像这样

date = models.DateTimeField(editable=True, auto_now_add=True)

但是,在admin系统中,即使editable设置为,该字段也不会显示True

有谁有想法吗?

关注者
0
被浏览
41
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    我相信理性在于auto_now_add领域。

    从这个答案:

    设置了auto_now属性的任何字段也将继承editable = False,因此不会显示在管理面板中。

    文档中也提到

    按照当前的实现,将auto_now或auto_now_add设置为True将导致该字段设置为editable = False和blank = True。

    这确实是有道理的,因为如果保存对象时将使用当前日期时间覆盖该字段,则没有理由使该字段可编辑。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看