首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

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

它注册为ir.property,也就是说它存储在ir_property表,通过查询该表来获取该字段。...odoo.fields.Char类型 odoo.fields.active 切换记录全局可见性,如果active设置为False,则记录在大多数搜索和列表不可见。...注解 当访问潜在多条记录记录集上非关系字段时,使用mapped(),该函数返回一个列表: total_qty = sum(self.mapped('qty')) # mapped返回一个列表,形如[...vals_list初始化新记录,如果需要,使用default_get() 参数 vals_list (list) --模型字段,作为字典列表:[{'field_name':field_value...(1, id, values) 使用values字典值更新id为给定id现有记录。不能在 create()中使用

13.4K10

odoo列表视图添加按钮实现数据文件导入

, reload-刷新tree列表, do_action-执行action } 说明: 函数返回,具体需要返回啥,实际取决于下文js实现(上传成功后需要执行操作),这里结合实际可能需求...;limit 设置列表视图每页最大显示记录数 菜单定义 odoo14\custom\estate\views\estate_menus.xml <?...,想复用上述js,需要替换js以下内容: 修改estate.upload.customer.mixin为其它自定义全局唯一 替换o_estate_customer_upload为在对应按钮视图模板定义对应...class属性 替换estate.CustomerHiddenUploadForm为在对应按钮视图模板定义隐藏表单模版名称 替换EstateCustomerListView.buttons为对应按钮视图模板定义按钮模版名称..._rpc函数model参数值("estate.customer"),method参数值("create_customer_from_attachment"),必要的话,修改then函数实现。

3.4K30

odoo Actions学习总结

所有Action都有两个强制属性: type 当前Action类别,决定可以使用哪些字段以及如何解释action name action名称,在客户端界面显示对action简短用户可读描述...如果未提供id,则客户端应获取所请求模型指定类型默认视图(这由 fields_view_get()自动完成)。列表第一种类型是默认视图类型,在执行操作时默认打开。...context (可选) 传递给视图附加上下文 domain (可选) 隐式添加到所有视图搜索查询过滤domain limit (可选) 默认情况下要在列表显示记录数。...默认为“Unnamed”,注意:如果name为空字符串,则默认为 Unnamed 例如,要使用列表和表单视图打开客户(设置了customer标志partner): { "type": "ir.actions.act_window...views序列服务器端组成如下: 从view_ids获取每个(id, type)(按sequence排序) 如果定义了view_id,并且其类型尚未被填充,则追加其(id,type) 对于view_mode

2.6K30

经验丰富程序员才知道15种高级Python小技巧

首先按年龄分类,然后按名字分类,使用operator.itemgetter()从列表每个字典获取年龄和名字字段,这样你就会得到想要结果: [ {<!...9.列表元素过滤 filter()使用 filter()函数接受2个参数: 函数对象1. 可迭代对象 接下来我们定义1个函数然后对1个列表进行过滤。...类似的,我们也可以利用列表推导式来过滤列表元素,作为一种生成和修改列表优雅方式,下面是使用列表推导完成同样任务过程: original_list = [1,2,3,4,5]2 filtered_list...比方说我们想获取到一个列表对象每一个元素平方,就可以使用到map()函数,就像下面的例子一样: original_list = [1,2,3,4,5] def square( number):...有些情况下我们想要检查列表是否存在某个元素,这种时候就可以使用到Pythonin运算符,譬如说我们有一个记录了所有比赛获胜队伍名称列表,当我们想查询某个队名是否已获胜时,可以像下面的例子一样:

1.2K60

MySQL十二:索引分析

在5.7版本后,默认explain直接显示partitions和filtered信息。...将被标记为:DERIVED SUBQUERY 在SELECT或WHERE列表包含了子查询 DERIVED 在FROM列表包含子查询被标记为DERIVED(衍生);MySQL会递归执行这些子查询...UNION RESULT 从UNION表获取结果SELECT DEPENDENT SUBQUERY 在SELECT或WHERE列表包含了子查询,子查询基于外层 UNCACHEABLE SUBQUREY...「filtered」 按表条件过滤行百分比 如果是全表扫描,filtered 代表满足 where 条件行数占表总行数百分比 如果是使用索引来执行查询,filtered 代表从索引上取得数据后...聚簇索引叶子节点存储行记录,InnoDB必须要有,且只有一个。 辅助索引叶子节点存储是主键值和索引字段 由上图可知:「通过辅助索引无法直接定位行记录,通常情况下,需要扫两遍索引树。

1.4K20

odoo context上下文用法总结

过滤条件 视图定义 为设置action打开tree列表视图,添加默认搜索,搜索条件为 state字段等于True name属性,那么content表示布尔,该为真,则表示默认开启...> 说明:context属性字典键值如果为模型定义字段名称,则该字段名称必须以元素形式,出现在模型对应视图(即不能是内联视图,比如内联Tree列表),否则会出现类似错误提示...为可编辑列表视图字段搜索添加查询过滤条件](odoo 为可编辑列表视图字段搜索添加查询过滤条件.md) 用于记录集,传递数据给模型方法 模型设计 #!...或者write方法,调用该方法前修改上下文,然后在方法通过self.env.context获取上下文中目标key,进而实现目标需求 res = super(EstatePropertyTag

2.1K20

一文看懂如何分析MySQL Explain(23)

接上文“一文看懂如何分析MySQL Explain(1/3)” ⑨ range:如果使用索引获取某些范围区间记录,那么就可能使用到range访问方法,比如: EXPLAIN EXTENDED...,keys列表示经过查询优化器计算使用不同索引成本后决定使用索引名,如上例 7 key_len列 key_len列表示当优化器决定使用某个索引执行查询时,该索引记录最大长度,它是由这三个部分构成...20行记录(t_classes表实际有20行记录),预计符合条件记录百分比是100.00%(filtered字段),把从驱动表(t_classes)获取记录数和被驱动表(t_subject)...记录做匹配,最终预计读取到43718条记录 11 Extra列 Extra列是用来说明一些额外信息,我们可以通过这些额外信息来更准确理解MySQL到底将如何执行给定查询语句。...⑧ Using filesort:如果根据索引列进行排序(order by 索引列)是可以用到索引,SQL查询引擎会先根据索引列进行排序,然后获取对应记录主键id执行回表操作,如果排序字段用不到索引则只能在内存或磁盘中进行排序操作

1.5K30

odoo wizard界面显示带复选框列表及勾选数据获取

选取ffers"按钮),弹出一个向导(wizard)界面,并将详情页内联tree视图("Offers" Tab页)列表记录展示到向导界面,且要支持复选框,用于选取目标记录,然执行目标操作。...wizard 窗口界面默认,包括记录列表 #因为使用了@api.model修饰符,self为空记录集,所以不能通过self.fieldName = value 方式赋值''' res...ID列表(当前记录详情页所属记录ID列表) # self.env.context.get('active_id') # 获取当前记录ID property = self.env['estate.property...,供web端使用,用于区分不同页面操作数据,'estate.property.offer_3'为供web端使用记录ID,'data'键值代表记录数据,其id键值代表记录在数据库主键id,context...可选 modelMethod 点击列表复选框时,需要调用模型方法,通过该方法收集列表勾选记录数据。可选。

5.2K60

odoo 开发入门教程系列-基本视图

在上一章已经看到,odoo能够为给定模型生成默认视图。实际上,默认视图对于业务应用程序来说是不可接受。相反,我们至少应该以逻辑方式组织各个字段。 视图是在带有操作和菜单XML文件定义。...列表视图,也叫树(tree)视图, 以表格形式显示记录。 视图根元素为。...搜索视图与列表及表单视图略有不同,因为它们不显示内容。尽管它们适用于特定模型,但它们用于过滤其他视图内容(通常是聚合视图,比如列表). 除了在使用方面的不同,他们定义方式是一样。...在odoo,domain对记录条件进行编码:domain是用于选择模型记录子集条件列表。每个条件都是一个包含字段名、运算符和三元组。...如果指定字段满足作用于运算符条件,则记录满足条件。

3.2K40

odoo 权限管理学习总结

res_partner表,那么在odoo如何区分用户类型以及如何做权限控制呢?...(2, ID, values) 使用values字典值更新id=ID现有记录 (2, ID) 删除id=ID这条记录(调用unlink方法,删除数据及整个主从数据链接关系) (3, ID) 删除主从数据链接关系但是不删除这个记录...可以简单理解为指定过滤条件,用户只能访问符合本过滤条件记录,配置为 [(1,'=',1)]则表示匹配所有记录。...company_ids 当前用户可以访问公司ID列表(非记录集)。 查看Security rules 获取更多详细信息。...groups属性(为逗号分隔组XML ID列表,如groups='base.group_user,base.group_system')注意:groups属性格式:moduleName.groupName

10.1K20

用 Explain 命令分析 MySQL SQL 执行

这些其实是我们分析加锁场景最为关心字段,后续文章会具体讲解如何根据这些字段和其他工具一起判断复杂 SQL 到底加了哪些锁。 ref ref 列表使用其他表哪个列或者常数来从表中选择行。...filtered 列表明了 SQL 语句执行后返回结果行数占读取行数百分比,越大越好。...根据 val = 3 这个 table filter 过滤,只返回一行数据,所以 filtered 比例为33.33%, extra 包含不适合在其他列显示但十分重要额外信息。...而因为只使用 val 索引读取了3行数据,还是通过 where 子句进行过滤filtered为 55%,所以 extra 中使用了 using where。...[keys_ref] using filesort MySQL 会对数据使用一个外部索引排序,而不是按照表内索引顺序进行读取,若出现该,应该优化 SQL 语句。

1.5K00

MySQl索引(二)如何看懂explain工具信息,使用explain工具来分析索引

EXPLAIN 工具能用于获取查询执行计划,即分析 MySQL 如何执行一个 SQL 语句。...type:表示连接类型或者访问类型,即MySQL如何查找表数据行,查找数据行记录大概范围。...ref:表示key 列记录索引,表查找所用到字段或常量。...filtered:表示符合查询条件数据百分比,可以使用 rows * filtered/100 估算出将要和 explain 前一个表连接行数(前一个表指 explain id 比当前表...Datetime:8 字节 如果字段允许为 NULL,需要 1 字节记录是否为 NULL 覆盖索引定义:mysql 执行计划 explain 结果里 key 有使用索引,如果 select 后面查询字段都可以从这个索引获取

13010

odoo 为可编辑列表视图字段搜索添加查询过滤条件

实践环境 Odoo 14.0-20221212 (Community Edition) 需求描述 如下图,列表网仓记录详情页面(form视图),编辑内联视图中货主记录,为货主和仓库字段搜索,添加过滤条件...,具体如下: 添加、编辑货主时,下拉列表只展示选取和当网仓记录所属公司关联货主,点击搜索更多,仅展示和当前网仓记录所属公司关联货主 添加、编辑货主时,下拉列表只展示选取和当网仓记录关联仓库(到...“仓库” Tab页添加仓库),点击搜索更多,仅展示和当前网仓记录关联仓库。...--此处代码已省略--> 修改ResPartner,重写模型name_search(编辑货主字段,弹出下拉列表时,会请求该模型函数),search_read(编辑货主字段...,点击下拉列表时 搜索更多打开界面时,会请求该模型函数) 提示:分析OmsNetworkLine模型定义可知道,货主字段(partner_id)为多对一字段,关联ResPartner 模型 class

1.1K30

用 Explain 命令分析 MySQL SQL 执行

这些其实是我们分析加锁场景最为关心字段,后续文章会具体讲解如何根据这些字段和其他工具一起判断复杂 SQL 到底加了哪些锁。 ref ref 列表使用其他表哪个列或者常数来从表中选择行。...rows 和 filtered rows 列显示 MySQL 认为它执行查询时必须检查行数。 filtered 列表明了 SQL 语句执行后返回结果行数占读取行数百分比,越大越好。...根据 val = 3 这个 table filter 过滤,只返回一行数据,所以 filtered 比例为33.33%, extra 包含不适合在其他列显示但十分重要额外信息。...而因为只使用 val 索引读取了3行数据,还是通过 where 子句进行过滤filtered为 55%,所以 extra 中使用了 using where。 ?...using filesort MySQL 会对数据使用一个外部索引排序,而不是按照表内索引顺序进行读取,若出现该,应该优化 SQL 语句。

1.8K11

MySQL EXPLAIN详解

id排序 从1开始递增:对于单一查询,id从1开始递增,依次标识查询每个步骤。 子查询和UNION:对于复合查询,id排序取决于执行计划步骤执行顺序。...衍生表别名 如果查询中使用了DERIVED,表示创建了一个衍生表(通常是从FROM子句中子查询获取),table字段将显示衍生表别名。...filtered 在查询过程过滤百分比 filtered取值范围 filtered是一个百分比,范围从0到100。0表示没有任何过滤,100表示所有的行都被过滤。...filtered含义 filtered表示通过使用索引和条件进行过滤后,最终返回行数相对于扫描行数百分比。这个越高,表示查询条件和索引更有效地过滤了不符合条件行。...单表查询 在单表查询filtered表示使用索引和条件过滤百分比。 多表查询 在多表连接查询filtered表示在连接操作后使用索引和条件过滤百分比。

28610

odoo 开发入门教程系列-一些用户界面

这是因为,在odoo中加载CSV文件比加载XML文件更快。 odoo,用户接口(action,菜单和视图)大部分是通过创建和组装XML文件记录来定义。...view_mode 可获取视图。本例列表(树)和表格视图。 odoo到处都可以找到例子,但是这个 简单action好例子。关注XML 数据文件结构,因为你在后续练习中会用到。 <?...,直接从action获取,即为action属性 练习 添加菜单 在合适目录(本例odoo14/custom/estate/models/views)创建 estate_menus.xml 文件...Odoo有许多微调方式,但通常第一步是确保: 某些字段有默认 某些字段只读 当记录重复时,某些字段不能被拷贝 在我们房产业务案例,我们希望:: 售价只读(往后将自动填充) 当记录重复时,可用日期和售价不能被拷贝...字段定义,添加 default=X, 其中X 可以是Python文本(boolean, integer, float, string) ,也可以是一个以model对象自身为入参并返回一个函数

2.9K30
领券