django loaddata问题与postgres中的新datetime字段

时间:2012-04-17 01:36:59

标签: django postgresql postgresql-9.1 loaddata dumpdata

由于时区问题,我最近将项目的数据库从sqlite转换为postgres。转换在我的本地开发环境中正常工作。但是,在我的webfaction生产环境中,当我尝试使用loaddata从我的json文件填充数据库时,我收到以下错误消息:

Problem installing fixture 'smartcarpools.json': Traceback (most recent call last):
  File "/home/mb52089/webapps/smartcarpools_prod/lib/python2.7/django/core/management/commands/loaddata.py", line 169, in handle
    for obj in objects:
  File "/home/mb52089/webapps/smartcarpools_prod/lib/python2.7/django/core/serializers/json.py", line 35, in Deserializer
    for obj in PythonDeserializer(simplejson.load(stream), **options):
  File "/home/mb52089/webapps/smartcarpools_prod/lib/python2.7/django/core/serializers/python.py", line 128, in Deserializer
    data[field.name] = field.to_python(field_value)
  File "/home/mb52089/webapps/smartcarpools_prod/lib/python2.7/django/db/models/fields/__init__.py", line 710, in to_python
    raise exceptions.ValidationError(self.error_messages['invalid'])
ValidationError: [u'Enter a valid date/time in YYYY-MM-DD HH:MM[:ss[.uuuuuu]] format.']

我注意到webfaction使用postgres 8.3,而我的本地开发环境使用9.1。

非常感谢任何初学者的帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

我的错误中没有提到PostgreSQL。它抱怨没有有效的日期/时间。您是否检查过以确保smarcarpools.json的所有日期时间均为“YYYY-MM-DD HH:MM”格式?

哦 - 并且PostgreSQL 8.3于2008年发布。您将要:

  1. 看看webfaction(托管公司?)是否提供更新的内容
  2. 阅读版本8.4,9.0,9.1的release notes,以便了解有何不同之处。请记住,您不能简单地转储9.1数据库并将其加载到8.3中,尽管您应该能够朝另一个方向发展。
  3. 如果您无法在主机上获得最新版本,请为您的平台获取8.3的副本 - 如果您使用的是unix系统,则从源代码编译非常简单。