2015-06-09 14 views
1

尝试了以下内容:如何在django管理页面中填充datefield?

from datetime import datetime 
class ArticleAdmin(admin.ModelAdmin): 
    prepopulated_fields = {'slug': ('title',), 'pub_date':(datetime.now()) } 

这就提出:

错误:

<class 'news.admin.ArticleAdmin'>: (admin.E028) The value of 'prepopulated_fields' refers to 'pub_date', which must not be a DateTimeField, ForeignKey or ManyToManyField. 
<class 'news.admin.ArticleAdmin'>: (admin.E029) The value of 'prepopulated_fields["pub_date"]' must be a list or tuple. 
+0

正如文档中所述(https://docs.djangoproject.com/en/1.8/ref/contrib/admin/#django.contrib.admin.ModelAdmin.prepopulated_fields),'prepopulated_fields'将字段映射到其他字段他们将被填充。 'datetime.now()'不是一个字段。为什么不在数据库或表单级设置默认值? – kaveh

回答

1

你被遗忘的元组的逗号。

from datetime import datetime 
class ArticleAdmin(admin.ModelAdmin): 
    prepopulated_fields = {'slug': ('title',), 'pub_date': (datetime.now(),) } 
+0

没有工作... – sadaf2605

+0

对不起,试试这个方法。 –

0

prepopulated_fields不接受DateTimeField字段,ForeignKey的,也不ManyToManyField领域。

docs