有一个模型中名为“创造”一个领域 - Django的

问题描述:

我有一个模型,如下所示:有一个模型中名为“创造”一个领域 - Django的

class Item(models.Model): 

    name = models.CharField(max_length=150) 
    created = models.DateTimeField(auto_now_add=True) 

admin类如下:

class ItemAdmin(admin.ModelAdmin): 

    list_display = ('name', 'created') 

创建的领域不似乎存在

是否有一些基本的Django知识,我失踪或忘记了?

当你说该字段不存在时,你的意思是它没有显示在管理员更改表单上吗?这是使用auto_now_add时的预期行为。如果您希望该字段在创建时获得默认值,但仍然可以编辑,请改为使用default=datetime.datetime.now

+0

+1。啊。对问题的好解释。该字段确实不会显示在管理添加/编辑页面中。它会显示在列表页面中。 – 2010-09-03 12:24:38

奇怪。我尝试了您的例子,它的工作得很好(Django的1.2.1,2.6.2的Python) 可以验证:

  1. 领域存在于数据库中(火可能是一个SQL查询)
  2. 检查你的admin.py(再次)有任何差异。

更新

@Danielanswer更有可能帮助OP。

只要确保不要忘记在admin.py注册ItemAdmin:

admin.site.register(Item, ItemAdmin) 

然而,“创造”字段将只显示在该项目的列表页面,以及如果增加一个额外的字段如:

updated = models.DateTimeField(auto_now=True)