2016-02-24 20 views

回答

1

的方法被称为创建,将其覆盖:

def create(self, cr, uid, values, context=None): 

    values['your_hash_column'] = 'your_hash_result' 

    res = super(YourClassName, self).create(cr, uid, ids, values, context) 

    return res 

确保了“YourClassName”是您正在使用的类的名称。

说明:创建方法使用字典“值”来追加结果在数据库中,如果你添加一个新的值(在这种情况下你的散列),你再次调用超级,你会有与该值相同的结果,然后您将其返回。

+0

该文件是sale.py我是正确的吗? 我知道是很好的实践覆盖它,但我没有创建一个插件或其他任何东西。我只需要在创建发票并将其保存到数据库时创建哈希(已经完成哈希并将其保存到数据库,但它不够!)。 所以,我需要编辑最后一步,添加一个字段创建发票。 感谢您的回复:) – JoseSilva

+1

不,它是账户模块中的account_invoice.py。无论如何,你必须覆盖创建! – dccdany

+1

对不起,没有解释为什么,你必须覆盖创建,因为它是所有模型的功能,不仅仅是发票,即使你做或不做模块。 希望它有帮助 – dccdany

相关问题