OpenERP - UnicodeWarning:Unicode不等比较无法将两个参数都转换为Unicode

时间:2014-02-28 10:03:48

标签: python unicode openerp

openerp/server/openerp/osv/orm.py:833: UnicodeWarning: Unicode unequal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
  if cols[k][key] != vals[key]:

我在日志中看到此警告。我不知道这是什么时候开始发生的。这是什么意思?我怎样才能找出原因?

2 个答案:

答案 0 :(得分:0)

问题是,有一些字段标签有非ascii符号。当我改为ascii只有符号时,这个警告就消失了。

例如,假设它是这样的:

_columns = {
    'some_field': fields.char('Field label with non ascii ęą'),
}

当我改为:

_columns = {
    'some_field': fields.char('Field label with ascii only'),
}

警告消失了。

答案 1 :(得分:0)

只需在带有非ASCII字符的字符串之前添加u前缀。 例如:

_columns = {
'some_field': fields.char(u'Field label with non ascii ęą'),

}