在一个Django应用程序中,我试图在一个页面上显示模型的信息,但是当试图使用DateTimeField
来显示创建日期时,它返回一个服务器错误。这里是我的代码:在我的视图方法中,我无法使用模型的DateTimeField?
型号
class User(models.Model):
id = models.IntegerField(primary_key=True)
name = models.CharField(unique=True, max_length=128)
created_date = models.DateTimeField()
class Meta:
managed = False
db_table = 'user'
def __unicode__(self):
return self.name
查看,直到我尝试使用created_date
,无论是在type()
或将其添加到字符串
def user_detail(request, pk):
user = User.objects.get(id=pk)
# Debugging
print user.name # Works fine, prints "ZAD-Man"
print user.created_date # Works fine, prints "2014-07-21 00:00:00"
print type(user.created_date) # Breaks with a 500 Server Error
html = "<dt>Name</dt><dd>" + user.name + "</dd><dt>Date Added</dt><dd>" + user.created_date + "</dd>" # Breaks (when the debug lines are removed so that it reaches here)
return HttpResponse(html)
,一切工作正常。我做错了什么,我该如何解决?
编辑:下面是具体的错误:
当它打破了上type(user.created_date)
,我得到:
TypeError: 'unicode' object is not callable
当它打破了上...+ user.created_date +...
我得到(如果我删除调试线,发生):
TypeError: coercing to Unicode: need string or buffer, datetime.datetime found
你是什么意思的“休息”?你看到什么错误? – karthikr
这是Django日志和Chrome控制台中的500服务器错误。 –
在网络选项卡中,当您单击带有错误的条目时,可以看到该错误。 – karthikr