【问题标题】:New field in Django model doesn't show up in admin interface or model formsDjango 模型中的新字段未显示在管理界面或模型表单中
【发布时间】:2010-01-16 16:03:13
【问题描述】:

我在我的一个应用程序中创建了一个运行良好的模型。但是,我需要添加一个新字段。我这样做了,并使用manage.py reset <appname> 删除表并再次添加它们。这个过程很顺利 - 新字段出现在数据库中。但是,我无法让该字段显示在管理界面中,也无法显示在我创建的自定义模型表单中。因为我没有给它一个默认值(我不想,也不应该)我不能使用任何一种方法将一行添加到数据库中。有什么想法吗?

型号sn-p:

use_balance = models.BooleanField()

【问题讨论】:

    标签: python django django-models django-admin


    【解决方案1】:

    您是否重新启动了服务器?

    【讨论】:

    • 多次!但不知为何,这一次奏效了。多么奇怪……谢谢!
    • 最好知道调用哪个命令来刷新设置,而不是被限制重新启动,直到新字段神奇地出现。
    【解决方案2】:

    您是否忘记更新您的ModelAdmin 定义?

    【讨论】:

    • 我没有做任何特别的事情:admin.site.register(Account)
    • 嗯,这也是我的第一个猜测。一旦您开始在 ModelAdmin 代码中指定字段,您就有责任使其保持最新。这就是为什么我更喜欢将 ModelAdmin 直接放在 models.Model 下方,而不是建议的单独的 admin.py 文件。