2

我正在尝试升级为 Openerp 编写的模块。虽然它在本地机器和本地 openerp 服务器上运行良好。当我尝试通过 SVN 将文件更新到暂存服务器时,它给了我以下错误。该错误表明他们正在尝试将记录插入数据库,其中实际上是更新而不是插入。我担心直接从 Postgres 数据库中删除该记录,但我认为它可能会奏效。

在暂存服务器上进行 SVN 更新之前,我还删除了所有现有文件。可能这可能是坑坑洼洼,但我不太确定。让我知道你们认为什么是解决这个问题的最佳方法。以下是在 SVN 更新后重新启动时 Openerp Server 中显示的错误消息。服务器从这里停止,永无止境。

但是一旦我恢复文件或删除它们并更新服务器就像魅力一样工作。

module abc: loading objects
[2011-09-14 08:12:49,425][oe_test] INFO:init:module abc:registering objects
[2011-09-14 08:12:49,432][oe_test] INFO:init:module abc: creating or updating database tables
[2011-09-14 08:12:49,434][oe_test] DEBUG:sql:bad query: INSERT INTO ir_model_data (name,date_init,date_update,module,model,res_id) VALUES (E'model_abc', now(), now(), E'abc', E'ir.model', 301)
[2011-09-14 08:12:49,434][oe_test] DEBUG:sql:('model_abc', u'abc', 'ir.model', 301)
[2011-09-14 08:12:49,434][oe_test] DEBUG:sql:duplicate key value violates unique constraint "ir_model_data_module_name_uniq"

问候,

加延

4

3 回答 3

3

[2011-09-14 08:12:49,434][oe_test] DEBUG:sql:duplicate key value 违反唯一约束“ir_model_data_module_name_uniq”

在 ir.model.data 中,有一个“_sql_constraint”,为唯一的记录名称定义。所以错误来自该代码,并说您不能有重复的记录名称。

据我所知,由于 *_data.xml 文件中的记录 ID 重复,可能会发生这种错误。

注意:检查您的 *_data.xml 文件中的 noupdate="True" 与否。

于 2011-09-20T08:42:17.577 回答
2

在解决上述问题后,我能够找出实际原因并解决问题。根本问题是我有另一个模块意外地带有相同的名称。因此,因此发生了上述冲突异常。最后我更改了模块名称,模型名称和问题得到了排序。

感谢所有输入。

问候,

加延

于 2011-10-06T07:12:40.703 回答
1

您是否尝试使用 启动服务器-u your_module_name -d your_db_name

于 2011-09-19T12:45:46.697 回答