如何使用一条指令在 Odoo 中重置表单?
How can I reset a form in Odoo with one instruction?
我想在 Odoo v8 中用一条指令重置一个表单的所有字段。那可能吗?如果没有,我将不得不一个一个地重置每个字段,那不是很干净的代码
您可以将空模型的值分配给所有字段(MAGIC_COLUMNS除外)。
from openerp import models
# ... other code
@api.multi
def reset(self):
empty_obj = self.env[self._name]
for key, value in self._fields.iteritems():
if value.name not in models.MAGIC_COLUMNS:
setattr(self, key, getattr(empty_obj, key))
我想在 Odoo v8 中用一条指令重置一个表单的所有字段。那可能吗?如果没有,我将不得不一个一个地重置每个字段,那不是很干净的代码
您可以将空模型的值分配给所有字段(MAGIC_COLUMNS除外)。
from openerp import models
# ... other code
@api.multi
def reset(self):
empty_obj = self.env[self._name]
for key, value in self._fields.iteritems():
if value.name not in models.MAGIC_COLUMNS:
setattr(self, key, getattr(empty_obj, key))