我有两个Django站点:一个用于开发,一个用于生产。偶尔,开发数据库中的数据需要传输到生产数据库或其他方式。我使用postgresql。手动添加数据导致IntegrityError
这工作正常:我从我想要复制到的数据库中清空表,我从适用的表中生成sql,并将数据插入到清空的表中。到现在为止还挺好。
但是当我通过管理界面将数据输入到数据库时,Django引发IntegrityErrors,因为appname_modelname_pkey已经存在。
我认为这是因为管理界面想要添加ID为1的数据,但这已经是导入的记录。 Django不知道ID'1'已被使用。
我该如何解决这个问题?我希望Django增加id(就像SQL auto_increment会做的那样),不管已经存储了什么数据。
任何帮助表示赞赏!
你是一个有点含糊当你说“每隔一段时间,开发数据库中的数据需要传输到生产数据库或其他方式”。究竟是什么数据正在传输,它与表中已经存在的数据有什么关系?在大约3年前我做的一个项目中,我们有一些在开发中掌握的表格,并在更新时清除/重写(例如文章),以及在生产中掌握并且在更新期间从未触摸的其他(例如会话)。 – 2010-09-08 05:01:46
嗨,彼得。我想将一些数据库中的数据(不是已经相同的结构)转移到另一个数据库中。你是对的:并非所有的表格都被传送(例如,会话不是)。 – Patrick 2010-09-08 18:53:05