Opt*_*mus 4 python django datetime django-models
我有一个看起来像这样的模型
class Post(models.Model):
    id = models.IntegerField(unique=True, primary_key=True)
    title = models.CharField(max_length=150, blank=True)
    created = models.DateTimeField(blank=True)
    ...
我必须用大块数据填充数据库.我以平坦的json字符串形式获取数据(没有嵌套)所以我的工作很简单,即
mydict = json.loads(jsonstr)
mypost = Post(**mydict) 
mypost.save()
只有一个问题是日期时间以"YYYY-MM-DDThh:mm:ss + zzzz"格式表示(例如   "created" : "2011-11-17T09:21:31+0000"),它打破了上述代码.
我知道forms.DateTimeField了input_formats.有没有办法让DateTimeField接受上面的格式?
子类DateTimeField并适当地转换值:
class ConvertingDateTimeField(models.DateTimeField):
    def get_prep_value(self, value):
        return str(datetime.strptime(value, FORMAT_STRING))
然后使用ConvertingDateTimeField替换models.DateTimeField.
如果你看看DateTimeField如何创建datetime对象,可能有更好的方法.