当数据库(PostgreSQL)被分区时,如何从Django(版本1.5)admin添加记录?

时间:2013-04-25 12:13:24

标签: django postgresql

我想知道在分区数据库(PostgreSQL)时是否可以从Django(版本1.5)admin向数据库添加新记录?

更具体地说,在我的数据库中,我已将(通过使用触发器)一个名为Category的表分区为名为category_01category_02的两个分区。

在我完成对表的分区后,我尝试在其中插入新记录,但不断收到以下错误:

'NoneType' object has no attribute '__getitem__'

有人知道如何解决这个问题吗?我也试图在模型中添加自定义save()方法,但无济于事。这可能是最简单的解决方案吗?

1 个答案:

答案 0 :(得分:2)

经过2天的研究,我终于能够自己解决这个问题了。我的解决方案是覆盖模型中的save(..)方法,如下所示:

def save(self, *args, **kwargs):
   #custom save method
   #pdb.set_trace()
   from django.db import connection
   connection.features.can_return_id_from_insert = False
   print "save"

   super(your model name here, self).save(*args, **kwargs)

感谢Django文档和PostgreSQL文档,https://groups.google.com/forum/?fromgroups=#!topic/django-users/-AT4PLOmWAEhttps://code.djangoproject.com/ticket/10467帮助我解决问题!