首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当在Odoo12中创建了模型B的新实例(将many2one字段设置为模型A )时,如何更改模型A中的布尔值?

在Odoo12中,要在模型B中创建新实例并更改模型A中的布尔值,可以按照以下步骤进行操作:

  1. 首先,确保已经在模型B中定义了many2one字段,将其设置为模型A。例如,在模型B的Python文件中,可以添加如下代码:
代码语言:txt
复制
class ModelB(models.Model):
    _name = 'model.b'
    
    field_a = fields.Many2one('model.a', string='Field A')
  1. 接下来,在模型B的视图文件中,确保已经添加了一个many2one字段的视图部件,用于选择模型A的实例。例如,在模型B的视图文件中,可以添加如下代码:
代码语言:txt
复制
<record id="view_model_b_form" model="ir.ui.view">
    <field name="name">model.b.form</field>
    <field name="model">model.b</field>
    <field name="arch" type="xml">
        <form>
            <sheet>
                <group>
                    <field name="field_a"/>
                </group>
            </sheet>
        </form>
    </field>
</record>
  1. 然后,在模型B的Python文件中,可以通过重写create()方法来更改模型A中的布尔值。例如,在模型B的Python文件中,可以添加如下代码:
代码语言:txt
复制
class ModelB(models.Model):
    _name = 'model.b'
    
    field_a = fields.Many2one('model.a', string='Field A')
    
    @api.model
    def create(self, vals):
        record = super(ModelB, self).create(vals)
        
        # 获取模型A的实例
        model_a = self.env['model.a'].browse(vals.get('field_a'))
        
        # 更改模型A中的布尔值
        model_a.write({'boolean_field': True})
        
        return record

在上述代码中,我们通过browse()方法获取了模型A的实例,并使用write()方法更改了模型A中的布尔值。

  1. 最后,可以在模型A的视图文件中,确保已经添加了一个布尔字段的视图部件,用于显示和编辑该布尔值。例如,在模型A的视图文件中,可以添加如下代码:
代码语言:txt
复制
<record id="view_model_a_form" model="ir.ui.view">
    <field name="name">model.a.form</field>
    <field name="model">model.a</field>
    <field name="arch" type="xml">
        <form>
            <sheet>
                <group>
                    <field name="boolean_field"/>
                </group>
            </sheet>
        </form>
    </field>
</record>

通过以上步骤,当在Odoo12中创建了模型B的新实例,并选择了相应的模型A实例时,模型A中的布尔值将会被更改为True。

请注意,以上答案仅供参考,具体实现可能需要根据实际情况进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

odoo ORM API学习总结兼orm学习教程

用于多继承模块共享抽象父类,不会在数据库创建模型表 系统每个数据库自动实例化每个模型一次。...要创建不需要实例类,可以 _register 属性设置False _auto= False 是否应该创建数据库表。如果设置 False, 应该重写 init()来创建数据库表。默认设。...", params) 由于模型使用相同游标,并且Environment保存各种缓存,因此当在原始SQL更改数据库,这些缓存必须失效,否则模型进一步使用可能会变得不连贯。...and extension) Odoo提供三种不同机制,以模块化方式扩展模型: 从现有模型创建模型,向副本添加信息,但保留原始模块 扩展其他模块定义模型,替换以前版本 模型一些字段委派给它包含记录...Delegation) 第三种继承机制提供了更大灵活性(可以在运行时更改),但威力更小:使用_inherits模型当前模型未找到任何字段查找委托给“children”模型

13.5K10

odoo 开发入门教程系列-模型之间关系(Relations Between Models)

模型之间关系(Relations Between Models) 上一章介绍了包含基本字段模型创建自定义视图。然而,在任何真实业务场景,我们都需要不止一个模型。此外,模型之间链接是必要。...提示: 别忘记在 __init__.py导入Python模块文件,并在__manifest.py__添加数据或者访问权限。...这意味着可以多个"tax"添加到我们测试模型。...comodel,必须在comodel定义Many2one 字段 练习 添加房地产报价表 创建 estate.property.offer 模型,并添加以下字段: Field Type Attributes...当我们通过one2many字段创建记录,为了方便,会自动填充相应many2one 添加odoo14\custom\estate\models\estate_property_offer.py #!

4.5K40
  • 5. Schema和数据类型

    Schema第一次被创建,需要指定他们类型例如边标签、属性key、顶点标签。无法更改特定元素Schema类型。这是为了确保系统稳定。...除了本节中介绍Schema定义方式外,第30章高级教程也讲了如何定义来提高性能。 1. 定义边标签 连接两个顶点每条边都有一个标签,用来描述他们之间关系。...例如:顶点A和顶点B之间具有朋友关系,那他们之间边标签可以定义friend。...JanusGraph实例,Schema名字更改可能不会立即生效。...如果schema.default未设置none,则会自动创建schema约束,而不会引发异常。激活schema约束对现有数据没有影响,因为这些schema约束仅在插入过程应用。

    1.1K40

    Pro ASP.NET MVC –第五章 使用Razor「建议收藏」

    在我们例子,@model语句声明将传递给视图使用来自于行为方法模型对象。然后通过@Model,我们就可以调用模型对象方法,字段和属性。...当呈现视图时候,视图中代码块被执行。在我们例子,代码设置Layout属性null。...当呈现一个视图,MVC框架查找名为_ViewStart.cshtml文件。该文件内容被当作它好像包含在视图文件自身,我们可以使用这个特性来自动地设置layout属性值。...视图 使用视图模型对象,把其内容呈现给用户 更改视图模型对象任何方法 在本书后续章节,我们将不断回顾上表所述规则。...在创建视图,Visual studio并没有提供数组和集合支持,因此你需要手动设置模型类型 然后在生成视图中,你可以看到model类型:@model MvcRazor.Models.Product

    2.9K20

    LINUX useradd命令使用总结

    新账户主目录基目录    -c, --comment COMMENT         新账户 GECOS 字段    -d, --home-dir HOME_DIR       新账户主目录  ... -D, --defaults     显示或更改默认 useradd 配置   -e, --expiredate EXPIRE_DATE  新账户过期日期    -f, --inactive INACTIVE...etc/skel/  用户默认骨架目录(创建新用户,默认复制目录下所有文件)   /etc/login.defs  Shadow密码套件配置   5.简单使用实例 添加一个普通用户   [root@localhost...   [root@localhost ~]# userdel moonrongsnow [root@localhost ~]# useradd -r moonrongsnow 用户指定目录  ...,指定用户登录目录/opt/odoo12,创建一个和用户同名组,并将用户加到该组,指定用户登录后shell,默认为/bin/bash。

    1.1K31

    第15篇-使用Django进行ElasticSearch简单方法

    我们很快讨论一些示例,但是首先我需要阐明我们要完成工作: ● 在我们本地计算机上设置ElasticSearch并确保其正常运行 ● 设置一个Django项目 ● 批量索引数据库已经存在数据...这将是ElasticSearch参考点,以便当在数据库初始化索引并保存每个创建对象实例,它知道要处理索引。...因为只要在我们模型中进行某些更改,您就只想进行批量索引 init() 编制,因此可以将其映射到ElasticSearch模型。...现在,您已成功所有实例索引到ElasticSearch,创建了一个 post_save 对每个保存实例进行索引信号,并创建了一个函数来搜索我们ElasticSearch数据库数据。...我解释了如何Django模型连接到ElasticSearch进行索引和搜索,但是ElasticSearch可以做很多事情。

    5.3K00

    python+django 如何上传文件和下载文件

    Models 中新建了一个模型,并且设置 path FileFiled 格式 这样就可设置文件属性了,在django-web上上传文件,path文件路径,相信这点官网已经写非常详细了...下面记录下如何指定文件存储路径、文件访问路径、文件下载 存储文件 存储文件需要指定文件存储路径 在 settings.py 文件增加字段: MEDIA_ROOT 例如: 当在自己电脑上模拟运行时可以指定为...访问路径 访问路径就是在web或者APP等上面访问该文件路径 在 settings.py 文件增加字段 MEDIA_URL 例如: MEDIA_URL = '/Files/' 并且你服务地址.../文件名称 如何映射 在urls.py 文件增加静态文件映射 # 静态文件访问 from django.conf.urls.static import static import settings...补充:文件重命名 当我们上传一个文件到服务器,希望重新更改一下该文件名称和路径 在models 里面模型创建时候指定 class TestModel(models.Models): path

    3.8K40

    JanusGraphschema及数据建模

    可以某个property key数据类型定义Object.class来使该value存储任何值(可序列化),但是还是推荐使用具有具体类型值类型。...mgmt = graph.openManagement() //创建了一个名字birthDate属性,并设置值类型LONG,且只能保存一个值 birthDate = mgmt.makePropertyKey...('birthDate').dataType(Long.class).cardinality(Cardinality.SINGLE).make() //创建了一个名字name属性,并设置值类型String...).make() //创建了一个名字sensorReading属性,并设置值类型Double,且可以保存可以重复多个值 sensorReading = mgmt.makePropertyKey(...在更名可能导致冲突情况下,可能要重启实例。如果需要更名,可以先将原来元素改名为不存在元素名称,然后创建schema 元素,但不会影响已经创建数据,需要通过批处理修改数据。

    1.3K20

    Django之QuerySet详解

    若要按照另外一个模型字段排序,可以使用查询关联模型语法。即通过字段名称后面跟两个下划线(__),再加上模型字段名称,直到希望连接模型。....]> 如果有多个字段,传递flat发生错误。 如果不传递任何值给values_list(),它将返回模型所有字段,以在模型定义顺序。 常见情况是获取某个模型实例特定字段值。...该方法返回一个由(object, created)组成元组,元组object 是一个查询到或者是被创建对象, created是一个表示是否创建了对象布尔值。...如果查找不到对象,get_or_create()将会实例化并保存一个对象,返回一个由对象以及True组成元组。...该方法返回一个由(object, created)组成元组,元组object是一个创建或者是被更新对象, created是一个标示是否创建了对象布尔值

    2.3K20

    tf.lite

    这个值可以从get_input_details'index'字段得到。value:要设置张量值。...这个值可以从get_output_details'index'字段获得。返回值:一个函数,它可以返回一个指向任意点内部TFLite张量状态数字数组。...(默认错误)change_concat_input_ranges:布尔值,用于更改用于量化模型concat操作符输入和输出最小/最大范围行为。当更改concat操作符重叠范围。...布尔值,指示是否对转换后浮点模型权重进行量化。模型大小将会减小,并且会有延迟改进(以精度代价)。...(默认设置((OpsSet.TFLITE_BUILTINS)))optimizations:实验标志,可能会更改。转换模型要应用优化列表。如[Optimize.DEFAULT]。

    5.3K60

    带你认识 flask 数据库

    数据库模型 定义数据库中一张表及其字段类,通常叫做数据模型。ORM(SQLAlchemy)会将类实例关联到数据库表数据行,并翻译相关操作。...这个类字段定义类属性,字段被创建db.Column类实例,它传入字段类型以及其他可选参数,例如,可选参数中允许指示哪些字段是唯一并且是可索引,这对高效数据检索十分重要。...而应用在下一个版本必须对模型进行更改,例如需要添加一个表。如果没有迁移机制,这将需要做许多工作。无论是在你开发机器上,还是在你服务器上,都需要弄清楚如何变更你数据库结构才能完成这项任务。...通过数据库迁移机制支持,在你修改应用模型之后,生成一个迁移脚本(flask db migrate),你可能会审查它以确保自动生成正确性,然后更改应用到你开发数据库(flask db upgrade...最基本查询就是返回该类所有元素,它被适当地命名为all()。请注意,添加这些用户,它们id字段依次自动设置1和2。

    2.3K20

    2022盘点工作室常用API数据接口开发平台

    云果云(YesApi.cn),是一个低代码数据接口开发平台,工作室提供“开箱即用”数据API接口。...timestamp等;设置字段长度,仅对部分字段有效;设置字段默认值;设置字段索引;设置字段列表格式刷,方便更友好的人工查看数据,例如有:数字、图片、链接、人民币、百分比、信息隐藏等。...(AND或者OR),查找获取一条数据,并且在获取数据后更改字段,从而实现非重复数据获取。...常用数据接口Top 5:创建或更新非重复新数据接口 App.Table.CheckCreateOrUpdate接口描述: 增改 在自定义数据模型尝试添加一个【非重复】数据,如果数据已经存在,则进行更新操作...在MyAPI,可以在后台查看自己DIY接口列表。在DIY接口,你可以选择需要生成API数据接口模板,在生成CURD数据接口,你可以先选择操作哪个数据模型,然后再选择需要生成API接口功能。

    1.2K50

    Python回顾与整理2:Python对象

    (3)布尔值 前面提及布尔值,有以下几点注意: 每个对象天生具有布尔True或False值 空对象 值任何数字或者Null对象布尔值都是False 用户创建实例如果定义了...它布尔值始终True。...在Python,应该变量名看成是对象一个链接,对对象一个引用,它被指向这个对象,而不是直接赋值该对象。...140407360100672 >>> x = 'change' >>> id(x) 140407359514784 也就是说,表面上值是改变了,但实际上是3这个数字对象被丢弃回收,然后创建了一个数字对象...将上面的三种分类模型和Python对应数据结构进行总结,可如下: 标准类型分类 数据类型 存储模型 更新模型 访问模型 数字 标量 不可更改 直接访问 字符串 标量 不可更改 顺序访问 列表 容器

    61710

    bigML中提升树模型6个步骤

    在我们关于提升树模型(Boosted Trees)这六个系列文章第一篇博客文章,我们看到了对提升树集( Trees)一个介绍,以获得关于这个资源是什么以及它如何帮助您解决分类和回归问题一些背景...您可以按照多个条件过滤数据集,甚至可以从现有数据创建字段。 如果检查到数据没有错误,您需要将数据集分成两个不同子集:一个用于训练Boosted Trees模型,另一个用于测试。...默认情况下,您数据集最后一个字段被选为目标字段,但您可以使用左侧下拉列表轻松更改。要启用提升,请在类型下选择提升树。这将打开高级配置下增强标签。 当然,您现在可以使用默认设置并单击创建集成。...4.分析你提升树模型 一旦创建了提升树模型(Boosted Trees),资源视图包含称为局部依赖图可视化对象或PDP。该图表忽略除轴上显示两个区域以外所有区域影响。...如果您希望其他字段影响结果,则可以通过选中输入字段部分框或将它们设置轴来选择它们。 轴最初设置两个最重要领域。您可以随时使用X和Y附近下拉菜单更改字段

    2.2K00

    odoo 开发入门教程系列-模型和基本字段

    模型和基本字段 在上一章末尾,我们创建一个odoo模块。然而,此时它仍然是一个空壳,不允许我们存储任何数据。...ORM 层是odoo一个关键组件。该层避免了手动写入大部分SQL并提供可扩展性和安全服务. 业务对象被定义继承于 ModelPython类。可以通过在定义设置属性来配置model。...最重要属性 _name,该属性定义了model在odoo系统属性。...有两大类领域字段:‘简单’字段--直接存储在模型原子值,形如Boolean, Float, Char, Text, Date 和Selection, ‘关系型’ 字段--连接相同或者不同模型记录...required (bool, default: False) 如果 True, 表示该字段值不能为空。创建记录必须拥有默认值或给定值。

    2.4K30

    使用Flask部署ML模型

    总的来说,目的是展示如何iris_model包模型代码部署到一个简单Web应用程序。还想展示MLModel抽象如何在生产软件更容易地使用机器学习模型。...这个类不是真正单例,因为每次实例化类都会创建一个对象。但是,same_models列表始终可用于该类所有实例。选择以这种方式实现单例模式以保持代码简单。...该预测终点,因为它并没有定义是预计输入和输出数据模式类从以前终端不同功能。如果客户想要知道需要将哪些字段发送到模型进行预测,它可以找到元数据端点发布JSON模式字段描述。...如果Flask应用程序安装了具有输入或输出模式新版本模型,则Flask应用程序代码根本不需要更改以适应模型。...如果Flask应用程序安装了具有输入或输出模式新版本模型,则Flask应用程序代码根本不需要更改以适应模型

    2.4K10

    深入学习下 TypeScript 泛型

    在本节,您将看到如何创建映射类型。想象一下,您想要创建一个类型,给定另一个类型,该类型返回一个类型,其中所有属性都设置具有布尔值。...这将创建一个名为 K 类型,它绑定到当前属性名称。这可用于使用语法 T[K] 访问原始类型此属性类型。在这种情况下,您将属性类型设置布尔值。...该对象具有与模型相同属性,但类型设置布尔值。在一个字段传递 true 意味着您希望它被返回,而 false 则意味着您希望它被省略。...您可以在现有模型类型上使用 BooleanFields 泛型来返回与模型具有相同形状类型,但所有字段设置布尔类型,如以下突出显示代码所示:代码语言:javascript复制type BooleanFields...IsStringType;在此代码,您创建了两种类型,A 和 B

    15310

    深入学习下 TypeScript 泛型

    想象一下,您想要创建一个类型,给定另一个类型,该类型返回一个类型,其中所有属性都设置具有布尔值。...这将创建一个名为 K 类型,它绑定到当前属性名称。这可用于使用语法 T[K] 访问原始类型此属性类型。在这种情况下,您将属性类型设置布尔值。...该对象具有与模型相同属性,但类型设置布尔值。在一个字段传递 true 意味着您希望它被返回,而 false 则意味着您希望它被省略。...您可以在现有模型类型上使用 BooleanFields 泛型来返回与模型具有相同形状类型,但所有字段设置布尔类型,如以下突出显示代码所示: type BooleanFields = {...= IsStringType; 在此代码,您创建了两种类型,A 和 B

    39K30

    odoo 开发入门教程系列-计算字段和变更(Computed Fields And Onchanges)

    自然地我们总面积定义这两者总和,我们将为此使用计算字段概念,即给定字段值将从其他字段值中计算出来。 到目前为止,字段已直接存储在数据库并直接从数据库检索。字段也可以被计算。...在这种情况下,不会从数据库检索字段值,而是通过调用模型方法来动态计算字段值。 要创建计算字段,请创建字段并将其属性compute设置方法名称。...设置“garden”字段后,我们希望花园面积和朝向提供默认值。此外,当“花园”字段设置,我们希望花园面积和重置零,并删除朝向。在这种情况下,给定字段值会影响其他字段值。...练习--花园面积和朝向赋值 在estate.property模型创建 onchange 方法以便当勾选花园设置花园面积(10)和朝向(North),未勾选,移除花园面积和朝向值。...始终首选computed field,因为它们也是在表单视图上下文之外触发。永远不要使用onchange业务逻辑添加到模型

    3.2K30
    领券