Odoo中如何定制化已存在的视图(以子产品为例)

  1. (可选)如要扩展视图对应的模型请增加相应的字段,如:

    class product(models.Model):
        _inherit = "product.product"     
        max_quantity = fields.Float(string="Maximum Quantity") //增加了一个最大数量字段
    
  2. 找到原始的视图名称,可以通过调试视图查找,如:

    Odoo中如何定制化已存在的视图(以子产品为例)_第1张图片

    Odoo中如何定制化已存在的视图(以子产品为例)_第2张图片

  3. 这样我们就知道要去product模块中找id为product_normal_form_view的视图了,最简单的方便是用IDE全局查找,我们看到结构如下:

    Odoo中如何定制化已存在的视图(以子产品为例)_第3张图片

  4. 接下来就是定制化了,注意model与inherit_id要写对:

    Odoo中如何定制化已存在的视图(以子产品为例)_第4张图片

  5. 如上图,我们在name字段后添加了最大数量,并且加了一个叫“属性”的tab,里面放了个IFRAME,安装运行效果如下:

    Odoo中如何定制化已存在的视图(以子产品为例)_第5张图片

这样就完成了。官网中相应的说明在 https://www.odoo.com/documentation/8.0/reference/views.html#inheritance

说明

  1. 如只是小范围地修改最好用xpath来做,语法使用见: http://www.w3school.com.cn/xpath/index.asp
  2. 如改得很多最好把原视图整个copy过来后再修改,不用xpath这种打补丁的方式

你可能感兴趣的:(python,openerp,odoo)