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

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

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

3.4K40

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

表单视图也是如此:尽管使用了一些标记,如或,但在设计方面几乎没有什么可做的。 然而,如果我们想给我们的应用程序一个独特的外观,就必须更进一步,能够设计新的视图。...目标: 本节结束时创建一个房产的看板视图 在我们的地产应用程序中,我们希望添加一个看板视图来显示我们的房产。看板视图是标准的Odoo视图(如表单和列表视图),但其结构更灵活。...事实上,每张卡片的结构是表单元素(包括基本HTML)和QWeb的混合。看板视图的定义与列表视图和表单视图的定义相似,只是它们的根元素是kanban。...:这向视图中添加name字段。...每个字段都有两个属性 value 和raw_value。前者是根据当前用户参数格式化的,后者则是直接通过read()读取的。

2.2K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

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

    提示: create_date 仅在记录创建时被填充,因此需要一个回退,防止创建时的奔溃 在表单和列表视图中添加字段,正如本章目标中显示的第二个动画中的一样。...为了实现这一点,我们定义了一个方法,其中self表示表单视图中的记录,并用 onchange()修饰该方法,以指明它由哪个字段触发。...你对self所做的任何更改都将反映在表单上: from odoo import api, fields, models class TestOnchange(models.Model): _name...最终取决于用户是否修改名称和描述值。 同时,需要注意的是,不要循环遍历 self,因为该方法在表单视图中触发,self总是代表单条记录。...这是一个非常糟糕的想法,因为在以编程方式创建记录时不会自动触发onchanges;它们仅在表单视图中触发。

    3.2K30

    odoo 开发入门教程系列-继承(Inheritance)

    例如,在我们的房地产场景中,我们希望在常规用户视图中直接显示销售人员的财产列表。...,提示如下: 模块继承(Model Inheritance) 引用: 查看主题相关文档继承和扩展 我们希望在“Settings/Users & Companies/Users”表单视图中直接显示与销售人员关联的房产列表...目标: 在用户表单视图中显示与销售人员关联的avaliable房产列表其用户表单视图 Odoo提供了视图继承,其中子“扩展”视图应用于根视图之上,而不是就地修改现有视图(通过重写它们)。...这些扩展既可以添加内容,也可以从父视图中删除内容。 扩展视图使用inherit_id字段引用其父视图。...它的arch字段包含多个xpath元素,用于选择和更改父视图的内容,而不是单个视图:

    2.3K20

    odoo Actions学习总结

    binding_view_types 以逗号分隔的视图类型列表,即Action需要显示的上下文菜单所在的视图,主要是“列表”和“表单”。...默认为list,form(列表和表单) Window Actions (ir.actions.act_window) 最常见的动作类型,用于通过视图呈现模型的可视化:Window Action为模型定义了一组视图类型...默认值为“Unnamed”,注意:如果name值为空字符串,则默认为 Unnamed 例如,要使用列表和表单视图打开客户(设置了customer标志的partner): { "type": "ir.actions.act_window...(默认= tree,form ) 以逗号分隔的视图类型列表,格式为字符串(注意不要包含空格)。...中的每个未填充类型,追加(False,type) 应用实践举例 在estate模块的estate.property模型的表单视图中,为Action添加菜单"选取offers",如下: !

    2.7K30

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

    模型和表单,树,搜索视图 该练习是对前几章很好的扼要重述:你需要创建一个 model,设置 model,添加 动作和菜单,并且创建视图....它支持标准Python的集合操作,如len()和iter(),以及recs1 | recs2等额外的集合操作。...到estate.property 模型,表单和列表视图 提示: 视图中,使用 widget="many2many_tags"属性正如这里展示的一样。...,不必创建动作和菜单 添加offer_ids字段到estate.property 模型极其表单视图 这里有几件重要的事情需要注意。...首先,我们不需要所有模型的操作或菜单。某些模型只能通过另一个模型访问。在我们的练习中就是这样的:报价总是通过房产获得的。 其次,尽管property_id字段是必需的,但我们没有将其包含在视图中。

    4.5K40

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

    当需要添加数据格式简单时,用CSV格式还是很方便的,当数据格式更复杂时(比如视图架构或者一个邮件模板),我们使用XML格式。比如包含HTML tags的 help field。...odoo中,用户接口(action,菜单和视图)大部分是通过创建和组装XML文件中的记录来定义的。常见的模式为 菜单> action > 视图。为了访问记录,用户在几个菜单级中导航。...view_mode 可获取的视图。本例中为列表(树)和表格视图。 odoo中到处都可以找到例子,但是这个 简单action的好例子。关注XML 数据文件结构,因为你在后续的练习中会用到。 <?...服务,查看效果 字段,属性和视图(Fields, Attributes And View) 到目前为止,我们只对房产广告使用了通用视图,但在大多数情况下,我们希望对视图进行微调。...我们看到一些属性,如required=True,会影响数据库中的表模式。其他属性也将影响视图或提供默认值。 练习 -- 添加一些属性到字段。

    3K30

    odoo 权限管理学习总结

    可以利用该特性实现隐藏对象需求,比如针对一些常规下不需要显示的特殊字段,为其设置属性groups = "base.group_no_one",可以实现在非Debug模式下隐藏字段在视图中的显示。...) ORM字段可以具有提供组列表的groups属性(值为逗号分隔的组XML ID列表,如groups='base.group_user,base.group_system')注意:groups属性值格式...如果当前用户不在列出的组中,他将无权访问该字段: 将自动从请求的视图中删除受限制的字段 从fields_get()响应中删除受限制的字段 尝试(显式的)读取或写入受限字段会导致访问错误 修改estate..."/> 验证,发现界面上,未授权上述框选权限的用户已经看不到上述字段了 注意:通过为当前视图中目标字段添加groups属性实现的权限控制仅作用于当前视图,如果希望当前视图模型(Model)的所有视图中,...接口,会调用fields_view_get方法,可以重写此方法以控制xml显示的效果(参考网络资料,未实践验证) 按钮权限(按钮级别) 类似字段权限控制,仅需在在对应视图中,为目标按钮元素

    10.2K20

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

    在这篇教程里我们将会了解到 Odoo 模型里的一些其他类型的字段和特殊机制,而我依然会继续带领大家一起完善我们的 Todo 应用,不断地往里面添加一些新的功能特性,让它看起来更丰满也更实用一些。...选择字段 在上一篇教程中,我们已经创建好了待办事项的模型,但是只是添加了「描述」和「已完成?」两个字段,这肯定是不能满足我们的需求的。...任务是否已经过期,我们要先知道任务的截止时间(上面一小节已经加上了)和当前时间,然后进行比较判断任务的截止时间是否小于当前时间,如果是则表示任务已经过期了,我们需要在视图上用红色将对应的任务标记起来。...deadline 这个字段的值(我们需要用它的值和当前时间进行比较),如果一个计算字段会用到多个其他字段的值,这里就需要以逗号分隔,将用到的值的字段名依次传入装饰器中。... 在视图中我们把

    1.4K10

    odoo context上下文用法总结

    _context is {'key1': True, 'key2': True} 需要注意的是,上下文是和记录集绑定的,修改后的上下文并不会在其它记录集中共享 应用场景示例 用于action,为关联视图添加默认搜索...、过滤条件 视图定义 为设置action打开的tree列表视图,添加默认搜索,搜索条件为 state字段值等于True 视图中定义的、元素的name属性值 content 如果fieldName为搜索字段的name属性值,那么...> 说明:context属性值中的字典的键值如果为模型中定义的字段名称,则该字段名称必须以元素的形式,出现在模型对应的视图(即不能是内联视图,比如内联Tree列表)中,否则会出现类似错误提示...为可编辑列表视图字段搜索添加查询过滤条件](odoo 为可编辑列表视图字段搜索添加查询过滤条件.md) 用于记录集,传递数据给模型方法 模型设计 #!

    2.2K20

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

    实践环境 Odoo 14.0-20221212 (Community Edition) 代码实现 模块文件组织结构 说明:为了更好的表达本文主题,一些和主题无关的文件、代码已略去 odoo14\custom...;limit 设置列表视图每页最大显示记录数 菜单定义 odoo14\custom\estate\views\estate_menus.xml <?...; }, _onUpload: function (event) { var self = this; // 如果隐藏的上传表单不存在则创建...class属性值 替换estate.CustomerHiddenUploadForm为在对应按钮视图模板中定义的隐藏表单模版名称 替换EstateCustomerListView.buttons为对应按钮视图模板中定义的按钮模版名称...\service_mixins.js中),用于查找当前action管理器并执行action -- do_action函数的第一个参数,格式如下: { 'type': 'ir.actions.act_window

    3.5K30

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

    实践环境 Odoo 14.0-20221212 (Community Edition) 需求描述 如下图(非实际项目界面截图,仅用于介绍本文主题),打开记录详情页(form视图),点击某个按钮(图中的"...选取ffers"按钮),弹出一个向导(wizard)界面,并将详情页中内联tree视图("Offers" Tab页)的列表记录展示到向导界面,且要支持复选框,用于选取目标记录,然执行目标操作。...wizard可以通过关系字段(many2one或many2many)引用常规记录或wizard记录,但常规记录不能通过many2one字段引用wizard记录 详细代码 注意:为了更清楚的表达本文主题...以上参数同下文saveSelectionsToSessionStorage 参数可同时共存 如果需要将action绑定到指定模型指定视图的Action,可以在ir.actions.act_window定义中添加...binding_model_id和binding_view_types字段,如下: <record id="action_demo_wizard" model="ir.actions.act_window

    5.3K60

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

    实践环境 Odoo 14.0-20221212 (Community Edition) 需求描述 如下图,列表网仓记录详情页面(form视图),编辑内联视图中的货主记录,为货主和仓库字段搜索,添加过滤条件...,具体如下: 添加、编辑货主时,下拉列表中只展示选取和当网仓记录所属公司关联的货主,点击搜索更多,仅展示和当前网仓记录所属公司关联的货主 添加、编辑货主时,下拉列表中只展示选取和当网仓记录关联的仓库(到...“仓库” Tab页中添加的仓库),点击搜索更多,仅展示和当前网仓记录关联的仓库。...字段 视图设计 odoo> 添加过滤条件代码实现 修改视图,给视图添加context <?xml version="1.0" encoding="UTF-8" ?

    1.2K30

    三分钟让你了解什么是Web开发?

    CSS 层叠样式表(Cascading Style Sheets, CSS)是一种样式表语言,用于描述用标记语言编写的文档的表示。基本的格式和样式可以通过HTML来完成,但是最好是使用CSS。...使用JS,我们可以通过几种方式操作DOM树: JS可以通过添加、更改和删除页面中的所有HTML元素和属性来修改DOM树。 JS可以改变页面上的所有CSS样式。...,如“First Name”和“Last Name”。...通过认证用户创建新的博客 为此,我们需要一个带有两个输入字段(标题、内容)的HTML表单,用户可以通过该表单创建一个博客帖子。...View:视图可以是任何输出的信息表示。我们的HTML代码显示在这里,所以数据来自模型,但是HTML在视图中。 Controller:第三部分,如果我们点击视图后链接,控制器将被调用。

    5.8K30

    独家 | 手把手教数据可视化工具Tableau

    工作表包含功能区和卡,您可以向其中拖入数据字段来构建视图。 A. 工作簿名称。 B. 卡和功能区 - 将字段拖到工作区中的卡和功能区,以将数据添加到您的视图中。 C....在视图中更改字段的数据类型 若要在视图中更改字段的数据类型,请在“数据”窗格中右键单击(在 Mac 中按住 Control 单击)字段,选择“更改数据类型”,然后从下拉列表中选择相应数据类型。...当 Tableau 确定每个字段的数据类型时,如果某个字段中的值与该数据类型不匹配, Tableau 就会采用若干不同方式之一来处理字段,具体情况视数据类型而定。...注意:如果您希望能够指示 Tableau 如何将拖到视图的某个字段进行分类,以便覆盖默认值,请在将其拖到视图之前右键单击(在 Mac 上按住 Control 单击)该字段,Tableau 将提示您在指定放下该字段时如何在视图中使用它...要在 Tableau 中创建热图,可将一个或多个维度分别放在“列”和“行”功能区上。然后选择“方形”作为标记类型并将相关度量放在“颜色”功能区上。 可通过设置表单元格的大小和形状来增强这种基本热图。

    18.9K71

    PyCharm 2016.3 公开预览版发布

    2.PEP 498:格式化字符串文字:对f字符串的基本支持识别其语法,并在其中为大括号括起来的替换字段提供代码完成。...所有您需要的是在项目设置(设置(Mac OS X的首选项|项目|项目解释器)中指定一个基于SSH或Vagrant的远程解释器。 ? 2.我们已经在基于类的视图中为Django表单实现了代码完成。...PyCharm现在理解基于类的视图中的窗体上下文,并以与基于函数的视图相同的方式显示特定于窗体的自动完成和建议。...对于具有长值的变量(如numpy数组或pandas数据框),可以注意到变量浏览器中特殊的新“查看为...”超链接。 单击它可在单独的弹出式视图中查看值: ? 五、Docker Compose集成 ?...PyCharm包含了DataGrip的所有新功能: 数据库驱动程序管理 在表编辑器中同时编辑多个字段 批量提交更改 重命名视图 XML提取器 …… 下载地址: Windows Linux Mac OS

    5.4K40

    Odoo开发指北 01 初识Odoo

    开发自己的模块时,需要在模块所在目录下,创建两个文件:init.py和__manifest__.py,在其中定义模块的初始化操作以及模块的描述。...然后使用自己的模块:把自己的模块路径设置到odoo中,重启odoo让其搜索到自定义模块,即可通过odoo进行安装。...static:静态资源文件,如css、js等 views:网页视图文件与模版文件(xml文件,使用QWEB语言进行描述) init.py manifest.py:描述文件 脚手架命令   使用...Odoo 脚手架 odoo-bin scaffold 命令新建了我们的 aaa 应用 …/odoo-bin scaffold aaa 模块开发流程 分析模块模型,得出模型所需的字段有哪些,然后定义模型类...构建动作对象,关联某个具体菜单项的响应。 构建视图对象:主要是list、tree、form、search视图。

    2.4K30

    htop(1) command

    这将强制使用列表视图,除非同时指定-t 选项。 -t, --tree 在树状视图中显示进程。可用于在使用选项 -s 按照指定列排序时强制生成树视状图。...删除不需要的 Linux 功能。在严格模式下,由于功能较少,终止、更改进程优先级和读取进程延迟记帐信息等功能将不起作用。...进程视图和排序 F5, t 树视图:按父子关系组织进程,并将它们之间的关系以树形布局显示。切换键将在树视图和你之前选择的排序视图之间切换。选择一个排序视图将退出树视图。...F6, 选择排序字段,也可以通过 和 > 访问。当前排序字段由标题中的高亮显示指示。 进程优先级调整 F7, ] 增加选定进程的优先级(从'nice'值中减去)。...特殊视图和功能 +, -, * 在树视图模式中,展开或折叠子树。当子树被折叠时,进程名称左侧显示一个"+"号。

    15610

    国产开源极致的微前端框架,成本低,速度快,原生隔离,功能强

    8.根据业务制定不同模板,生成不同的业务表单:如问卷调查表单,可视化大屏,流程表单,通用增删改查表单,只要业务存在一定的通用性,我们就可以创建一个不同的模板解析 9.支持很多快捷的方式,如点击事件,可切换源码...简搭云可视化表单实现无码开发设计运行思维图 可视化表单实现无码开发设计运行思维图 由思维图中可以看出可视化平台主要由两个部分构成:表单设计器与mybatis语法解析引擎构成。...接口在线测试 动态接口使用方法说明 Mybatis语法是个不错的语法,能够将实体与数据库紧密的结合在一起,减少了存贮过程,视图的编写,而且比存贮过程,视图更多元化,更强大,有人说Mybatis...扩展思维 1.系统之间接口的对接,接口返回的json格式是固定的,如何将接口数据对接我们系统中,结合定时任务的配置是可以完美解决,各种系统数据对接和输出,实现万能对接接口 2.MQ队列,MQ队列接收也是实体...JSON格式数据是固定的,如现在系统的各种功能开发就用到了该接口。

    1.9K20
    领券