Many2Many字段之context

一、context的用处

在odoo中,context的用处有很多:

  1. 关联字段Many2one中的context,在xml视图中定义,可以传递至server端,这里在重新定义特定模型的展示名字(name_get)及搜索(name_search)时,特别有用;
  2. 在xml定义的button,可以传递至server端;
  3. 在tree视图的元素中,给2many字段创建元素时,设置默认值;
  4. 在form视图中,针对关联字段,如context="{‘default_login’: ‘leinal22@163.com’}"
  5. 在search视图中,filter标签,传递默认分组context="{‘group_by’:‘country_id’}"
  6. 窗口动作(ir.actions.act_window)中使用context,field name=“context”>{‘asset_type’: ‘purchase’}</field,在打开的form中绑定的方法能够直接获取导context;在窗口动作中,还能实现对打开的视图记录进行过滤:{‘search_default_week’: True};对新建的form设置默认值:{‘default_customer’: True};绑定视图:{‘tree_view_ref’: ‘my_module.tree_all_contacts’}

二、many2many字段传递context,实现不同的name display

many2many字段,xml视图中的context默认不加载导上下文的context,致使服务器端无法获取。
需重写"web.BaseModel"类:

odoo.define('e2yun_xw_specification.SpecificationModel', function (require) {
   
    "use strict";
    /**
     * 重写_applyX2ManyChange方法,在m2m字段使用onchange时,前段传递视图定义的context的参数
     **/

    var BasicModel = require('web.BasicModel');

    BasicModel.include({
   
        _applyX2ManyChange: function (record, fieldName
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值