2013-05-16 49 views
4

使用Django框架(1.3.1)和Mongoengine一起使用。使用mongoengine保存DateTimeField

当试图保存贴出场(到期日),它捞出用

ValidationError(无法解析日期 “2013-12-31”: '交货期'])

但是,通过datetime.datetime.now()保存日期时,它工作正常。搜索示例后,我没有选择。

我的代码的相关部分(与使用文本输入标签的普通的HTML表单):

views.py

goal.DueDate = request.POST['duedate'] 
goal.save() 

models.py

class Goal(Document): 
    DueDate = DateTimeField() 
    last_update = DateTimeField(required=True) 

任何想法?

更新(不能回答自己尚):

行..找到了解决办法。键入它,显然给了新的见解。

goal.DueDate = datetime.datetime.strptime(request.POST [ '交货期'], '%Y-%间 - %d')

回答

2

DateTimeField预计日期时间,而不是一个串。
如果格式是众所周知的,你可以使用strptime像更新,或dateutil parse method这是能够猜测格式。

你还应该考虑采用更安全的ISO格式的字符串从网页的形式发送。