Odoo - 将空值写入数字列
Odoo - Write null to numeric column
在 Odoo/OpenERP 7 中,我有一个名为 balance
的可为空的数字列
'balance': fields.float(string='Balance',digits=(20,2))
我正在尝试使用 Python 代码将 None
更新到字段中
self.write(cr, uid, [1], { 'balance':None })
但是,令人沮丧的是,Python 将 None 视为与 0 相同,所以我最终在数据库中得到 0 而不是预期的 Null。
关于如何使用写入命令存储空值的任何指示?
你不能:Odoo ORM 不支持空数值。
如果您确实需要将 "empty" 值与零值区分开来,您需要一种解决方法:要么使用字符串字段(更简单,但需要额外检查以仅允许数字,并且更难执行计算) 或使用第二个布尔字段来标记空值。
在 Odoo/OpenERP 7 中,我有一个名为 balance
的可为空的数字列'balance': fields.float(string='Balance',digits=(20,2))
我正在尝试使用 Python 代码将 None
更新到字段中
self.write(cr, uid, [1], { 'balance':None })
但是,令人沮丧的是,Python 将 None 视为与 0 相同,所以我最终在数据库中得到 0 而不是预期的 Null。
关于如何使用写入命令存储空值的任何指示?
你不能:Odoo ORM 不支持空数值。
如果您确实需要将 "empty" 值与零值区分开来,您需要一种解决方法:要么使用字符串字段(更简单,但需要额外检查以仅允许数字,并且更难执行计算) 或使用第二个布尔字段来标记空值。