zoukankan      html  css  js  c++  java
  • 如何在odoo的ORM中给字段创建default默认值

    方式一:

    from odoo import models, fields
    class FandxModel(models.Model):
        _name = 'fandx.model'
    		
        # 设置默认值为fandx
        name = fields.Char(default="fandx")
    

    这种方式适用于静态默认值的时候,比如使用select选择,或者时间等等的时候。

    方式二:

    from odoo import models, fields
    class FandxModel(models.Model):
        _name = 'fandx.model'
    		
        def _default_name(self):
       		return self.env.user.id
        # 设置默认值为动态获的用户的ID的值
        name = fields.Char(default=_default_name)
    

    方式二,可以动态的计算一些值赋值到对应想设置default值的地方。

    但是有一点需要注意,这里是不可以获取同级字段的值来计算想要设置的值,因为数据没有被保存,数据库不能拿到对应其他字段的数据的值。

    如果非要拿其他字段的值来进行计算默认值,可以使用onchange的方法来实现



    本文 FANDX 原创内容,未经允许禁止转发,违者必究其责任!
  • 相关阅读:
    gitio博客搭建,hexo + NeXT
    [MIsc]JD笔试编程题
    [MATH]Big Integer +
    【Math】GCD XOR 证明
    【Math】最近点对
    【SRM】600#div2 B 枚举
    【Game】组合游戏
    【Game】找出游戏必胜态
    【DP】树形DP 记忆化搜索
    141. Linked List Cycle
  • 原文地址:https://www.cnblogs.com/fandx/p/15025572.html
Copyright © 2011-2022 走看看