How to override create,write,unlink method in Odoo v8

As we all know, Odoo 8 has new api which is different with v7. So how to override the create,write,unlink orm method in odoo 8 way ?

Let see it.

 

if you want override create method you have to use the model decorator.

@api.model
def create(self,values):
    ............

 

if you want override write method ,you are not supposed to use write method,using multi decorator instead.

@api.multi
def write(self,values):
  ......................

 

the same with unlink:

@api.multi
def unlink(self):
    ..............

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Odoo,可以通过覆盖(Override)现有的模型、视图、控制器和其他功能来修改或扩展系统的行为。这样做可以避免直接修改Odoo的核心代码,从而使得系统更加可维护和升级。 要进行覆盖操作,您可以按照以下步骤进行: 1. 创建一个自定义模块(Custom Module):首先,您需要创建一个新的Odoo模块,用于存放您的自定义代码。您可以使用Odoo提供的命令行工具或手动创建一个新的模块文件夹。 2. 继承现有的模型或视图:在您的自定义模块,您可以通过继承现有的模型或视图来修改其行为。这样做可以让您在不影响原始代码的情况下,添加、修改或删除字段、方法和视图等。 - 对于模型:您可以创建一个新的Python类,并继承自要修改的模型类。然后,您可以添加新字段、修改现有字段的属性,以及重写方法等。 - 对于视图:您可以创建一个新的XML文件,并继承自要修改的视图。然后,您可以添加、修改或删除视图的元素,以实现自定义布局和功能。 3. 注册自定义模块:在完成自定义模块的编写后,您需要将其注册到Odoo。为此,您可以在模块的`__manifest__.py`文件添加必要的模块信息,例如模块名称、版本号和依赖关系等。 4. 安装和使用自定义模块:最后,您可以通过Odoo的模块管理界面安装和使用您的自定义模块。安装后,您的修改将会生效,并应用于相应的模型、视图或其他功能。 需要注意的是,覆盖操作需要小心处理,以免破坏系统的完整性和稳定性。建议在进行覆盖操作之前,先进行充分的测试,并备份系统数据和代码。 这是关于Odoo覆盖操作的基本概述,如果您有具体的覆盖需求或其他问题,请提供更多详细信息,我将尽力提供帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值