XML-RPC返回错误的双精度

时间:2015-10-30 15:11:46

标签: postgresql openerp xml-rpc odoo-8

我已经编写了自己的Odoo模块,我在weight模型中添加了属性product.template

Python代码中的实现是

weight = fields.Float('Weight', digits=(12,4))

我还更改了视图,以便我可以在表单中设置此值。所以我在Odoo GUI中创建了一个新产品,并将weight设置为7.85。存储值后,显示7.8500似乎是合理的,因为定义声明了4个浮点数。存储在PostgreSQL中的值是numeric,值为7.8500。所以这一切似乎都是正确的。

当我现在想要使用基于XML-RPC的Odoo API获取产品时,我不会7.8500而是7.8500000000000005

<member>
    <name>weight</name>
    <value><double>7.8500000000000005</double></value>
</member>

所以我的问题是,为什么会这样,我该如何防止这种情况?

修改 每当我有2个小数位时会出现此问题。因此,当我使用7.8代替7.85时,返回值为7.8

0 个答案:

没有答案