2013-04-10 73 views
0
File "/home/bellvantage/Documents/openerp-7.0/openerp-7.0/openerp/sql_db.py", line 226, in execute 
res = self._obj.execute(query, params) 
ProgrammingError: operator does not exist: integer = boolean 
LINE 1: ...=1,write_date=(now() at time zone 'UTC') where id IN (false) 
                  ^
HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts. 

我试图覆盖写入函数。因为我需要更新另一个模型的(bpl.company.define)列。所以我使用了write()方法。但是它给出了上面的错误&需要对它进行排序。 请指教我并解释哪些参数需要通过write()方法(除cr,uid之外)。ProgrammingError:运算符不存在:integer =布尔值

我上传我的模型类here。 &查看级别here。在bpl.py

行号100

确定其分类friend.issue与database.the数据,该数据将要读我输入的数据是null.so这就是返回false和错误出现这样的:-)

+1

'id IN(false)'看起来不正确。 'id'可能是整数,'false'是布尔值。 – grep 2013-04-11 04:34:59

+1

plz提供信息,当你有这个错误? – user1576199 2013-04-11 05:08:35

+1

是的用户@ AnomA说,division_id获取false而不是id,所以当用假记录浏览时会产生错误。你必须首先检查division_id是否退出然后去浏览。 – user1576199 2013-04-11 05:14:10

回答

1

我认为在文件bpl.py中的create函数中,您得到的division_id是false,并且您尝试浏览一个非类型对象的记录,然后尝试写入它。请检查您是否为division_id的正确ID。

+1

确定它的排序friend.issue与我在数据库中输入的数据。要读取的数据是null.so这就是返回错误和错误来像那样 :-) – 2013-04-11 05:47:57

1

“now()at time zone ..........”看起来像SQL,它应该是一个用双引号括起来的Python字符串,而不是空白的单词。

+0

感谢它的排序。 问题与我引用空值(因为被调用的列表还没有记录) – 2013-04-11 05:52:52