* context
  这是一个上下文,运用很灵活

* 得到整个context
  V7
  context=dict(context or {})
  这个版本是明传
  V8
  self.context_get()
  self.env['res.users'].context_get()

* 得到context里面对应的值

得到flag的值
 
  V8
  self.env.context.get('flag',False)

V7
  context.get('flag',False)

* 修改context里面的对应的值

V8
  self.with_context({'flag': False})
  或
  self.with_context(flag=True) 单一时
  或
  ctx = dict(context or {})
  ctx['flag']=False
  self.with_context(ctx)

v7
  context = dict(context or {})
  这句不在改前一定要有,否则报错
  -------
  context.update({'flag': False})
  或:
  context.update(flag=True)单一时
  或:
  context['flag']=False

* 保证context的字典类型
  context = dict(context or {})

* 复制context
  c = context.copy()
  主要改变部分值,带到其它函数中

* 自己构造context
  context = {'flag':Fasle,'lang':'zh_cn'}

* 常规用法
  v7 带入函数中
      def create(self, cr, uid, vals, context=None):
        context = dict(context or {})

v8 带入函数中
    if part.lang:
            self = self.with_context(lang=part.lang)
        product = self.env['product.product'].browse(product)
   ------
   return self.with_context(ctx).write({'invoice_line': []})
   记住,用了 with_context

* 视图中引入context
  model="ir.actions.act_window"时
  <field name="context">{"search_default_my_export_list":1} </field>
  代表 搜索时 my_expert_list 值为1 对于 search_default_是系统的前置标识

分组
  <filter string="Day"name="group_day"context="{'group_by':'date_start:day'}"

指定搜索
  <field name="department_id" string="Department" context="{'invisible_department': False}"/>

列表中字段
  <field name="line_ids" context="{'currency_id': currency_id,
   'default_analytic_account': context.get('analytic_account', '')}">

视图定义context 带入函数
<field name="product_id" on_change="onchange_product_id(product_id, context)"
  context="{'default_hr_expense_ok':1}"/>

* context上面是常用的方法,掌握后,就可以在整个系统中方便传数值,但是上下文,不要传太多

(49) odoo context操作的更多相关文章

  1. (47) odoo详细操作手册

    odoo 8 详细操作手册, ERP(Odoo8.0)操作手册-v1.10(陈伟明).pdf 链接: http://pan.baidu.com/s/1hsp0bVQ 密码: r9tt 花了将近9个月时 ...

  2. (10)odoo控制器操作

    -----------------更新时间11:17 2016-09-18 星期日    完善讲解17:44 2016-02-17 星期三-----------------* 控制器Controlle ...

  3. (04)odoo视图操作

    -----------------更新时间19:04 2016-09-29 星期四11:17 2016-09-18 星期日18:13 2016-04-05 星期二15:05 2016-03-14 星期 ...

  4. odoo - context

    得到整个context self.context_get() self.env['res.users'].context_get() 得到context里面对应的值 eg:得到flag的值 self. ...

  5. 第一章 使用开发者模式快速入门 Odoo 12

    本文为最好用的免费ERP系统Odoo 12开发手册系列文章第一篇. Odoo提供了一个快速应用开发框架,非常适合创建商业应用.这类应用通常用于保留业务记录,增删改查操作.Odoo 不仅简化了这类应用的 ...

  6. Odoo Shell

    Odoo shell 提供了一个简便的操作 Odoo的交互界面, 从 odoo 9.0 开始就是标准功能, 无需安装第三方应用. 本文基于Odoo10 说明 Odoo Shell以及 Odoo Mod ...

  7. 第三章 Odoo基本设置

    登录 正常访问http://localhost:8069后,登录的界面如下: 这是Odoo默认的认证方式,也是我们最常见最熟悉的认证方式,7.0以前,数据库中的密码都是以明文方式存储,可以很轻松地在r ...

  8. Android Context完全解析

    Context类型 我们知道,Android应用都是使用Java语言来编写的,那么大家可以思考一下,一个Android程序和一个Java程序,他们最大的区别在哪里?划分界限又是什么呢?其实简单点分析, ...

  9. Android各种获取Context方法

    首先讲一讲这四个函数的区别,后面还有我对context的一些理解区别如下所示: 原文链接http://stackoverflow.com/questions/6854265/getapplicatio ...

随机推荐

  1. 准备学习Spring MVC

    这一系列笔记将带你一步一步的进入Spring MVC,高手勿喷. 首先你得安装以下的工具: JDK,虽然JDK8已经发布了一段时间了,但是由于我们并不会使用到里面的新特性,所以JDK6以上版本皆可以( ...

  2. iOS·UIButton如何文字在下图片在上

    创建子类继承自UIButton,在layoutSubviews方法中改变文字和图片的位置就可以了,同理,稍作改变,可以写出文字在上图片在下.本文只给出文字在下图片在上的代码 -(void)layout ...

  3. 如何结合自己本地数据库,使用【百度地图】API

    如何结合自己本地数据库,使用[百度地图]API百度地图使用越来越多,官网上的示例数据都是写死的,实际上我们的开发中的数据都是从数据库中取出来的,最近看了很多大神的文章,结合自己本地数据库使用百度地图A ...

  4. iOS去除导航栏和tabbar的1px横线

    1.在自己定义的导航栏中或者设计稿中经常需要去除导航栏的1px横线,主要是颜色太不协调了 去除之前的图片 要去除这1px的横线,首先应该知道它是什么,在Xcode的界面调试中可以看到,它其实是UIIm ...

  5. 讯时网关IP对接PBX

    先配置呼入 1.在网关的中继线绑定号码 2.在路由表写入到PBX 路由到 pbx  IP     绑定的号码和路由的 fxo后面的数字要一致 3.在PBX 建一个sip中继,host为网关IP 4.创 ...

  6. Button的enabled和clickabled的区别

    Button的enabled和clickabled的区别 setEnable设置用户是否可以点击此按钮,setClickable设置程序在某个条件下自动点击此按钮  

  7. php 安装yar扩展

    git:https://github.com/laruence/yar 先克隆 如果没有 git 需要先安装 yum install git 然后 克隆 git clone https://githu ...

  8. JS作用域及call

    <script type="text/javascript"> function log(val){ console.log(val); } function base ...

  9. js巧用apply方法实现数组最值以及合并

    尽管js的apply方法在平常的使用中并不多见,但是在某些地方使用的还是很有帮助性的,这里就和大家说两个比较实用的例子:1.数组最大最小值 求数组中的最大最小值,js有相应的方法:Math.min() ...

  10. CSS 制作三角形原理剖析

    使用css制作三角形其实原理很简单,下面一步步解析. 1.html代码如下 <div class="triangle"> </div> 2.CSS代码 .t ...