2010-09-03 79 views
2

我有一個模型,如下所示:有一個模型中名爲「創造」一個領域 - 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知識,我失蹤或忘記了?

回答

5

當你說該字段不存在時,你的意思是它沒有顯示在管理員更改表單上嗎?這是使用auto_now_add時的預期行爲。如果您希望該字段在創建時獲得默認值,但仍然可以編輯,請改爲使用default=datetime.datetime.now

+0

+1。啊。對問題的好解釋。該字段確實不會顯示在管理添加/編輯頁面中。它會顯示在列表頁面中。 – 2010-09-03 12:24:38

1

奇怪。我嘗試了您的例子,它的工作得很好(Django的1.2.1,2.6.2的Python) 可以驗證:

  1. 領域存在於數據庫中(火可能是一個SQL查詢)
  2. 檢查你的admin.py(再次)有任何差異。

更新

@Danielanswer更有可能幫助OP。

0

只要確保不要忘記在admin.py註冊ItemAdmin:

admin.site.register(Item, ItemAdmin) 

然而,「創造」字段將只顯示在該項目的列表頁面,以及如果增加一個額外的字段如:

updated = models.DateTimeField(auto_now=True) 
相關問題