odoo的x2many字段由于赋值方式比较特殊,所以不能像普通字段一样直接给默认值,需要返回一个列表里面嵌套列表结构的数据。
1.先看many2many和one2many字段的赋值方式:
many2many

(0,0,{values}) 根据values里面的信息新建一个记录。

(1,ID,{values})更新id=ID的记录(写入values里面的数据)

(2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)

(3,ID) 切断主从数据的链接关系但是不删除这个数据

(4,ID) 为id=ID的数据添加主从链接关系。

(5) 删除所有的从数据的链接关系就是向所有的从数据调用(3,ID)

(6,0,[IDs]) 用IDs里面的记录替换原来的记录(就是先执行(5)再执行循环IDs执行(4,ID))

例子[(6, 0, [8, 5, 6, 4])] 设置 many2many to ids [8, 5, 6, 4]

one2many

(0, 0,{ values })根据values里面的信息新建一个记录。

(1,ID,{values}) 更新id=ID的记录(对id=ID的执行write 写入values里面的数据)

(2,ID) 删除id=ID的数据(调用unlink方法,删除数据以及整个主从数据链接关系)

2.根据上面的赋值方式可以发现,看如下示例:

@api.modeldef get_all_electric_vehicle(self):'''默认获取全部的列车'''electric_vehicle_ids = self.env['lintong.electric.vehicle'].search([])vals = []for item in electric_vehicle_ids:vals.append([4, item.id])return vals
electric_vehicle_ids = fields.Many2many('lintong.electric.vehicle','production_notice_electric_rel',default=get_all_electric_vehicle,string='列车选择')

注意:不同于compute属性,default属性的函数必须定义在字段定义之前

odoo的many2many和one2many字段给默认值相关推荐

  1. odoo对many2many、one2many的操作

    odoo对many2many.one2many的操作 点我下载完整odoo的demo many2many (0,0,{values}) 根据values里面的信息新建一个记录. (1,ID,{valu ...

  2. mysql修改表中某个字段的默认值

    Mysql中用SQL增加.删除字段,修改字段名.字段类型.注释,调整字段顺序总结 在网站重构中,通常会进行数据结构的修改,所以添加,删除,增加mysql表的字段是难免的,有时为了方便,还会增加修改表或 ...

  3. PowerDesigner中如何给字符串字段设置默认值 .

    参考:http://www.cnblogs.com/navy235/archive/2011/10/18/2216443.html 在PowerDesigner12.5中,给varchar或nvarc ...

  4. 关于mysql设置varchar 字段的默认值''和null的区别,以及varchar和char的区别

    一.背景 根据业务需求,发现以前的同事在设计表的时候,很多字段都没有设置默认值.在mysql5.7版本之后,没有设定默认值的字段,在严格模式下是很容易报错的,所以我这边需要先给每个字段加上一个默认值. ...

  5. mysql给字段设置默认值,以及mysql的严格模式

    一.背景 在插入数据库时,报错#1364,后来才知道是字段在创建的时候,没有设置默认值的原因.关于默认值,我们都知道设置默认值为0或者null的时候,就算我们不插入该字段,数据库也会自动按照默认值填充 ...

  6. mysql char null_关于mysql设置varchar 字段的默认值''和null的区别,以及varchar和char的区别...

    一.背景 根据业务需求,发现以前的同事在设计表的时候,很多字段都没有设置默认值.在mysql5.7版本之后,没有设定默认值的字段,在严格模式下是很容易报错的,所以我这边需要先给每个字段加上一个默认值. ...

  7. mysql中IFNULL(字段名,默认值) 给null设置默认值

    SELECT IFNULL(字段名,默认值)  as 别名 FROM 表名;

  8. Mysql数据库修改某个字段的值,或修改某个字段的默认值

    1.修改数据表的某个数据: update 表名 set 字段名=新值 条件; update users set recordNum=2 where id =2; 2.修改某个字段的默认值 alter ...

  9. 改变数据库字段的默认值

    大家都知道已经发布的项目,在迭代开发的过程中使用的数据库是不同的,一般分为生产库和测试库,当你发现因为数据库中的字段默认值造成了程序实际使用中的不合理,那么我们就需要去改变数据库字段的默认值了,如下图 ...

最新文章

  1. apache php wordpress,windows 安装 apache php wordpress
  2. 性能测试负载模型(七)
  3. .net swf 上传组件
  4. 快速使用Tensorflow读取7万数据集!
  5. VC++动态链接库(DLL)编程深入浅出:QA(原创)
  6. Linux脚本中带有小数点的数值比较大小
  7. 鸿蒙系统nova3i,华为nova3i无惧大型手游:打造丝般顺滑娱乐体验
  8. springboot整合dubbo注解方式(三)
  9. xshell 5安装教程
  10. MySQL Sending data 查询数据慢
  11. vue 前端进行tab页面切换时,要求不刷新
  12. 玩客云添加到我的计算机,玩客云怎么备份?将电脑文件备份到玩客云教程
  13. 锐龙r75800h和酷睿i511400h差距多大 r7 5800h和i5 11400h核显
  14. 21考研:你是为了什么考研?
  15. 论war3中的随机数系统
  16. Windows如何管理(禁用、开启)FileZilla自启动(大部分软件通用)
  17. 怎样实现url隐形转发?
  18. 为什么使用双亲委派机制以及如何破坏双亲委派
  19. 计算机科学与技术没落,这七所985一个A+学科都没有评上?有点尴尬了
  20. Apache Hive 2.1.1 安装配置超详细过程,配置hive、beeline、hwi、HCatalog、WebHCat等组件...

热门文章

  1. VS Code去掉 unused 警告
  2. 2021年中秋国庆假期安排表新鲜出炉!这些你一定要知道
  3. 2D向量,求某个向量或是某个点相对另一个向量来说是左边、还是右边
  4. hadoop hdfs常见命令
  5. 沉睡者IT - 说几个2022年网络上比较好赚钱的创业项目
  6. FreeRTOS的学习(六)——系统时钟
  7. 我之看法--赵丹阳与巴菲特的午餐
  8. Linux开胃菜,静态网络设置
  9. BGP在数据中心的应用6——BGP在服务器上的应用
  10. 精通javapython拼写_异步图书 精通Python自然语言处理 高清文字版PDF下载