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

odoo Actions学习总结

所有Action都有两个强制属性: type 当前Action类别,决定可以使用哪些字段以及如何解释action name action名称,客户端界面显示对action简短用户可读描述...context (可选) 传递给视图附加上下文 domain (可选) 隐式添加到所有视图搜索查询过滤domain limit (可选) 默认情况下要在列表显示记录数。...web客户端默认为80 name(可选),action名称,界面显示时拼接到当前面包屑导航(现有导航面包屑 / name)。...默认为“Unnamed”,注意:如果name为空字符串,则默认为 Unnamed 例如,要使用列表和表单视图打开客户(设置了customer标志partner): { "type": "ir.actions.act_window...,以防其类型是 view_mode 列表一部分,并且尚未由view_ids某个视图填充 这些主要用于从数据文件定义action: <record model="ir.actions.act_window

2.6K30
您找到你想要的搜索结果了吗?
是的
没有找到

odoo context上下文用法总结

、过滤条件 视图定义 为设置action打开tree列表视图,添加默认搜索搜索条件为 state字段等于True 、元素name属性 content 如果fieldName为搜索字段name属性,那么...content表示需要搜索内容,输入内容是字符串,则需要添加引号,形如'test';如果fieldName为搜索过滤器name属性,那么content表示布尔,该为真,则表示默认开启...> 说明:context属性字典键值如果为模型定义字段名称,则该字段名称必须以元素形式,出现在模型对应视图(即不能是内联视图,比如内联Tree列表),否则会出现类似错误提示...或者write方法,调用该方法前修改上下文,然后方法通过self.env.context获取上下文中目标key,进而实现目标需求 res = super(EstatePropertyTag

2K20

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

在上一章已经看到,odoo能够为给定模型生成默认视图。实际上,默认视图对于业务应用程序来说是不可接受。相反,我们至少应该以逻辑方式组织各个字段。 视图是带有操作和菜单XML文件定义。...它们是ir.ui.view model实例。 我们estate模块,我们需要以逻辑方式组织字段列表(树)视图中,我们希望显示不仅仅是名称。 表单视图中,应该对字段进行分组。...自定义搜索视图中添加用户可能过滤字段是非常常见搜索视图还可以包含元素,这些元素充当预定义搜索开关。...odoo,domain对记录上条件进行编码:domain是用于选择模型记录子集条件列表。每个条件都是一个包含字段名、运算符和三元组。...如果指定字段满足作用于运算符条件,则记录满足条件。

3.2K40

ODOO优化层级关系查询效率方法

Odoo10 Development Essentials》Chapter5(p106)中介绍了Odoo中分层关系建立。 代码如下 在上面的代码。 使用字段来关联上层记录。...使用这个属性来开启分层搜索功能. 使用和字段来进行记录所属层级,当时看书时候对这些代码不是很理解,只是知道这样做能够提高层级关系数据模型查询数据记录效率。...(递归查询文件夹文件) Odoo为了提高层次结构(树状结构)查询效率,每一条层级数据记录添加跟字段. 假设A是B上级对象。那么存在这样逻辑关系。...Odoo 应用 我们用Odoo11product模块作为演示 文件.看到产品目录(ProductCategory类.15行起)代码 Odoo11演示数据,产品目录结构一共有6个 我们查询下数据库数据...要找Saleable下所有子目录即可使用 作为条件 结论: Odoo实际使用,发现使用parent存储特性模块主要涉及account, product, stock_location.

2.2K80

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

参考: 本主题相关文档可查阅 Many2one 我们房地产模块,我们想定义房地产类型概念,例如,房屋或公寓。...> 重启服务,刷新浏览器验证 房地产模块,我们仍然缺失两条关于房产信息:买家和销售人员。...买家可以是任何个人,然而,销售人员必须是房产机构员工(即odoo用户)。 odoo,有两种我们经常引用两种模型: res.partner: 一个partner为一个物理实体或者法人实体。...例如,我们通过partner_id字段测试模型上定义了到res.partner模型链接。...odoo如何知道我们报价与哪个房产相关?这就是使用odoo框架一部分魔力:有时候事情是隐式定义

4.4K40

odoo 开发入门教程系列-模块交互

模块交互 在上一章,我们使用继承来修改模块行为。我们房地产场景,我们希望更进一步,能够为客户生成发票。...我们案例,该模块依赖estate 和account,包括房产发票创建逻辑。采用这种方式,estate和account模块可以独立安装。当两者都安装后,链接模块将提供新功能。...不幸是,没有一种简单方法可以知道如何在Odoo创建任何给定对象。大多数时候,有必要查看其模型,以找到所需字段并提供适当。 学习一个好方法是看看其他模块是如何完成你想做事情。...create 方法不接受结果集作为字段。...为此account.move创建中包含invoice_line_ids字段,这是一个One2many字段。One2many和Many2many使用通用ORM方法描述特殊“commands”。

1.6K10

Odoo 基础教程系列」第三篇——从 Todo 应用开始(2)

在上一篇教程我们提到过,在对模型进行改动之后,需要对模块进行升级才能看到变更后样子,除了从应用列表中找到模块进行升级外,我们还可以命令行Odoo 启动命令加上参数 -u todo 指定升级...这个需求跟时间有关,并且时间是流动(一直变化),所以我们应该要有一个方法在用户每次打开待办事项之前,把这个结果计算好,并且反馈给用户,还好 Odoo ORM 已经为我们实现了相关机制——计算字段...deadline 这个字段(我们需要用它和当前时间进行比较),如果一个计算字段会用到多个其他字段,这里就需要以逗号分隔,将用到字段名依次传入装饰器。...PS: 这里我们对 deadline 进行了判断,是因为如果没有设置截止时间,又或者是新建代办事项时,这里 deadline 会是一个布尔,是不能和时间字符串进行比较。...这篇教程代码同样会更新 GitHub 仓库

1.3K10

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

然而,我们可能需要给定模型字段之间链接。有时,一个字段是根据其他字段确定,有时我们希望帮助用户输入数据。...本章目标 房地产模型,自动计算总面积和最佳报价 预期效果: 地产报价模型,自动计算合法日期且可被更新 我们房地产模块,我们定义了生活区和花园区。...自然地我们将总面积定义这两者总和,我们将为此使用计算字段概念,即给定字段将从其他字段中计算出来。 到目前为止,字段已直接存储在数据库并直接从数据库检索。字段也可以被计算。...在这种情况下,不会从数据库检索字段,而是通过调用模型方法来动态计算字段。 要创建计算字段,请创建字段并将其属性compute设置为方法名称。...> 重启服务,浏览器验证(参考本章目标第二个动画视图) 其它信息 默认,计算字段不会存到数据库,因此,不可能基于计算字段进行搜索,除非定义一个search 方法。

3.1K30

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

我们房地产模块,我们希望将与房地产相关信息(名称(name)、描述(description)、价格(price)、居住面积(living area)…)存储在数据库。...ORM 层是odoo一个关键组件。该层避免了手动写入大部分SQL并提供可扩展性和安全服务. 业务对象被定义为继承于 ModelPython类。可以通过定义设置属性来配置model。...最重要属性为 _name,该属性定义了modelodoo系统属性。...有两大类领域字段:‘简单’字段--直接存储模型表原子,形如Boolean, Float, Char, Text, Date 和Selection, ‘关系型’ 字段--连接相同或者不同模型记录...required (bool, default: False) 如果为 True, 表示该字段不能为空。创建记录时必须拥有默认或给定

2.3K30

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

这是因为,odoo中加载CSV文件比加载XML文件更快。 odoo,用户接口(action,菜单和视图)大部分是通过创建和组装XML文件记录来定义。...然而,菜单总是遵循一种体系结构,实际上有三个层次菜单: 根菜单,显示App切换器Odoo社区版切换器是一个下拉菜单) 第一级菜单,显示顶部栏 动作菜单 最容易方式是XML文件定义结构来创建菜单...,直接从action获取,即为action属性 练习 添加菜单 合适目录(本例odoo14/custom/estate/models/views)创建 estate_menus.xml 文件...Odoo有许多微调方式,但通常第一步是确保: 某些字段有默认 某些字段只读 当记录重复时,某些字段不能被拷贝 我们房产业务案例,我们希望:: 售价只读(往后将自动填充) 当记录重复时,可用日期和售价不能被拷贝...我们看到一些属性,required=True,会影响数据库表模式。其他属性也将影响视图或提供默认。 练习 -- 添加一些属性到字段

2.8K30

何在 Ububtu 18.04 上安装 Odoo 13

虚拟环境安装 Odoo,或者部署一个 Docker 容器,允许你对系统设置有更多控制,并且可以同一个系统上运行多个 Odoo 软件版本。...想要安装 PostgreSQL运行下面的命令: sudo apt install postgresql 一旦安装完成,创建一个 PostgreSQL,使用和之前创建系统用户一样名字,我们例子odoo13...mkdir /opt/odoo13/odoo-custom-addons 稍后,我们将会将该目录添加到addons_path参数。这个参数定义了 Odoo 用来搜索模块一个列表。...十一、总结 这篇指南带你浏览了如何在 Ubuntu 18.04 上 Python 虚拟环境 安装 Odoo 13,并使用 Nginx 作为反向代理服务器。...我们展示了如何在生产环境如何启用多进程以及优化 Odoo

8.7K41

odoo Web Controllers 学习总结

环境 odoo-14.0.post20221212.tar Web Controllers Controllers 控制器需要提供可扩展性,就像Model,但不能使用相同机制,因为先决条件(已加载模块数据库...:如果方法没有修饰情况下被重新定义,它将是“未发布” 所有方法修饰符都是组合,如果没使用任何参数重写方法修饰符,之前所有的参数都被保留,任何提供参数都将覆盖之前定义参数,比如: class...,会提示不可返回不可调用对象,但是可直接返回字符串,或者返回字符串函数,如下: class TestApi(http.Controller): @http.route('/test-api-service...该方法必须是Controller子类一部分 参数: route – 字符或者数组。将确定哪些http请求将匹配被修饰方法路由部分。可以是单个字符串字符串数组。...type – 请求类型,可选: 'http' 、'json' auth – 身份验证方法类型,可以是以下类型之一: user: 用户必须经过身份验证,执行当前请求用户,必须具有对应执行权限

1.3K20

odoo 开发入门教程系列-QWeb简史

表单视图也是如此:尽管使用了一些标记,或,但在设计方面几乎没有什么可做。 然而,如果我们想给我们应用程序一个独特外观,就必须更进一步,能够设计新视图。...Odoo自带内置引擎:QWeb模板。QWeb是Odoo使用主要模板引擎。它是一个XML模板引擎,主要用于生成HTML片段和页面。 你可能已经Odoo见过 看板,其中记录以卡片状结构显示。...目标: 本节结束时创建一个房产看板视图 我们地产应用程序,我们希望添加一个看板视图来显示我们房产。看板视图是标准Odoo视图(如表单和列表视图),但其结构更灵活。...本例,它用于将模板name设置为kanban-box :oe_kanban_global_click让可点击,以打开记录...在上面的示例字段name被添加到元素,但state它之外。当我们需要字段但不想在视图中显示它时,可以将其添加到元素之外。

2K20

何在 CentOS 8 上安装 Odoo 13

这个指南讲解了如何在 CentOS 8 上一个 Python 虚拟机环境从源码安装 Odoo 13。我们将会从 Github 上编译 Odoo 源码并且配置 Nginx 作为反向代理服务器。...我们例子,这个名字是odoo13: sudo su - postgres -c "createuser -s odoo13" 五、安装 Wkhtmltopdf Wkhtmltopdf软件包提供了一系列开源命令行工具...命令去激活这个环境: source venv/bin/activate 安装必要 Python 模块: pip3 install -r odoo/requirements.txt 如果你安装过程遇见任何编译错误...十二、总结 这篇指南带你浏览了如何在 CentOS 8 上 Python 虚拟环境 安装 Odoo 13,并使用 Nginx 作为反向代理服务器。...我们展示了如何在生产环境如何启用多进程以及优化 Odoo

3.9K20

odoo 权限管理学习总结

res_partner表,那么odoo如何区分用户类型以及如何做权限控制呢?...highlight=noupdate base.user_admin :admin用户(ID为2用户,用户数据定义odoo\addons\base\data\res_users_data.xml...可以利用该特性实现隐藏对象需求,比如针对一些常规下不需要显示特殊字段,为其设置属性groups = "base.group_no_one",可以实现在非Debug模式下隐藏字段视图中显示。...) ORM字段可以具有提供组列表groups属性(为逗号分隔组XML ID列表,groups='base.group_user,base.group_system')注意:groups属性格式...如果当前用户不在列出,他将无权访问该字段: 将自动从请求视图中删除受限制字段 从fields_get()响应删除受限制字段 尝试(显式)读取或写入受限字段会导致访问错误 修改estate

10K20

odoo 为form表单视图添加chatter功能

实践环境 Odoo 14.0-20221212 (Community Edition) 需求描述 如图,给表单新增一个类似聊天窗口,当记录一些表单活动(本例为自动记录当前记录状态变化) 需求实现 模型定义...odoo14\custom\estate\models\estate_property.py 需要继承mail.thread模型,并为需要追踪字段设置tracking属性,并设置属性为真值 #!...\odoo\addons\mail\models\mail_thread.py,其字段命名均以message_开头 tracking 该属性为True或数字时,打开针对该属性所属字段修改日志-...-当所属字段内容发生变化时,系统会将该字段变化前后写入日志,这个数字大小影响变更日志在日志排序。...odoo14\odoo\addons\mail\models\mail_activity.py,其字段命名均以activity_,对应,模型定义_inherit 属性也需要添加该模块,如下: _inherity

70120

odoo 开发入门教程系列-一个新应用

Goal: 该小节目标是让odoo识别我们新模块,一个空壳。它将显示Apps 创建模块第一步:新建一个目录。...为了让开发更轻松,建议首先创建目录 /home/$USER/src/custom,然后该目录添加待创建新模块对应目录(本例为 estate)。...__init__.py 目前可以保持为空,下一章我们回过头理它。而 __manifest__.py 文件必须描述模块,且不能保持为空。其必不可少字段为 name, 但通常会包含更多信息。...odoo框架会确保depends配置依赖模块我们模块被安装之前安装。 而且,如果这些模块某个依赖被卸载,我们模块及其它任何依赖它模块都会被卸载。...服务: python odoo-bin --addons-path=custom,odoo/addons -r myodoo -w test123 -d odoo 验证 浏览器页面访问Apps, 点击搜索

1.2K10

Ubuntu 16.04上安装Odoo 10

没有服务器同学可以在这里购买,不过个人更推荐您使用免费腾讯云开发者实验室进行试验,学会安装后再购买服务器。...在此示例,我们将使用Odoo默认端口8069,但这可能是您稍后配置文件中指定任何端口。如果您计划运行任何其他服务,也可以在此处添加其端口。...对于正常安装,您可以跳过此行,并且此Odoo实例将默认连接到端口8069。 注意 配置日志部分中所述,Ubuntu 16.04有很多Odoo日志记录选项。...请记住,journald将始终捕获主要Odoo服务活动(服务启动,停止,重新启动,错误),使用单独日志文件将仅排除日志“信息”消息,Web服务器消息,呈现引擎等。...自建服务器难免会遇到这样问题,配置SSL很麻烦,虽然对一部分人来说这也是一种乐趣,但是如果您在生产环境使用,还是建议您直接使用云关系型数据库,云关系型数据库让您在云中轻松部署、管理和扩展关系型数据库

3.3K42
领券