odoo widget命令及展示,widget详细使用教程。

 odoo 开发时经常需要用到widget,但是有点多,在网上查也没有效果图。
 所以就写的这篇博客,让自己以后使用widget能够比较方便,也方便大家。

如果对你有帮助,请帮忙点个赞,鼓励一下
All for one, one for all.

1.widget=“statusbar”

使用场景:经常使用在workflow上,审批流程之类的,数据类型通常为fields.Selection
注意:需要放在form表单的header中,form视图中该字段只能使用一次。
使用效果:
在这里插入图片描述

2.widget=“email” 电子邮件地址标签

使用场景:这个widget设置后,可以点击字段,产生跳转邮箱效果。
使用效果:
在这里插入图片描述

3.widget=“selection” 下拉选择标签

使用场景:需要选择的情况下,使用字段fields.Selection
使用效果:
在这里插入图片描述

4.widget=“mail_followers” 关注者标签

使用场景:对某个关注者发送消息。字段fields.One2many(mail模型,关注用户模型)
使用效果:
在这里插入图片描述

5.widget=“mail_thread” 消息标签

使用场景:发送email消息时候。字段fields.One2many(mail模型,POP/IMAP Server)
使用效果:
在这里插入图片描述

6.widget=“mail_activity”

使用场景:需要直接使用发送email 时候。fields.One2many(‘mail.activity’, ‘res_id’)
使用效果:
在这里插入图片描述

7.widget=“progressbar” 进度条,按百分比标签

使用场景:需要进度条的时候,字段为fields.float()取值为0-100,注意:小数点会四舍五入。
展示效果:
Tree
在这里插入图片描述
Form
在这里插入图片描述

8.widget=“one2many_list” 一对多列表标签fields.One2many()或者fields.Many2many()

使用场景:一对多的时候使用,展示类似像tree视图。字段为
展示效果:
在这里插入图片描述

9.widget=“many2many_tags” 多对多显示标签

使用场景:多对多的标签使用 字段为fields.Many2many()
展示效果:
在这里插入图片描述

10.widget=“url” 网站链接标签

使用场景:url可以直接点击跳转。字段为fields.Char()
展示效果:
在这里插入图片描述

11.widget=‘image’ 图片标签

使用场景:展示图片的时候。字段为fields.Binary(“image”)
展示效果:
在这里插入图片描述

12.widget=“many2many_kanban” 看版标签

使用场景:展示kanban视图的时候使用,字段为fields.Many2many()
展示效果:

在这里插入图片描述

13.widget=“handle” 移动排序标签

使用场景:实现拖拽排序的时候,使用字段为sequence = fields.Integer(string=‘排序’)
展示效果:
在这里插入图片描述

14.widget=“radio” 单选标签

使用场景:实现radiobutton的时候,使用字段为fields.Selection(
selection=[(‘person’, ‘Individual’), (‘company’, ‘Company’)])
展示效果:
在这里插入图片描述

15.widget="char " 字符标签

使用场景:未知,效果:未知
展示效果:

在这里插入图片描述

16.widget=“monetary” 价格(和精度位数相关)标签

使用场景:在金钱字段的时候,会在前面出现金钱标志,字段为 fields.Integer()或fields.Float()
注意:需要添加货币属性widget = ‘monetary’ options = “{‘currency_field’: ‘company_currency’}”
展示效果:

在这里插入图片描述

17.widget=“float_time” 单精度时间标签

使用场景: 显示精度时间的时候,使用字段fields.Float()
展示效果:
在这里插入图片描述

18.widget=“html” html相关标签

使用场景: 显示Html编辑的时候,使用字段fields.Text()
展示效果:
在这里插入图片描述

19.widget=“pad” pad显示相关标签

使用场景: 未知 字段:fields.Char(
展示效果:

在这里插入图片描述

20.widget=“date” 日期标签

使用场景: 需要使用日期的时候 字段:fields.Datetime()
展示效果:
在这里插入图片描述

21.widget=“sparkline_bar” 燃尽标签

使用场景: 未知 字段:fields.Float()
展示效果:

在这里插入图片描述

22.widget=“checkbox” 复选框标签

使用场景: 使用复选框的时候, 字段:fields.Boolean()
展示效果:
在这里插入图片描述

23.widget=“reference” 关联标签

使用场景:可以点击到另一个关联模型的视图,字段fields.Char()需要使用compute
展示效果:
在这里插入图片描述

  • 25
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
Odoo 的自定义 Widgets 可以帮助我们在页面上添加自定义的 HTML 元素和 JavaScript 代码。下面是一个基础教程,介绍如何创建自定义 Widgets。 1. 创建一个模块 首先,我们需要创建一个新的模块。在 Odoo 中,所有的自定义组件都应该包含在一个模块中。 2. 创建一个 Widgets 类 接下来,我们需要创建一个 Widgets 类。Widgets 类用于创建自定义的 HTML 元素和 JavaScript 代码。下面是一个简单的例子: ```python odoo.define('my_module.my_widget', function(require) { 'use strict'; var core = require('web.core'); var Widget = require('web.Widget'); var MyWidget = Widget.extend({ template: 'my_module.my_widget_template', init: function(parent, options) { this._super(parent, options); }, start: function() { this._super(); } }); return MyWidget; }); ``` 在这个例子中,我们创建了一个叫做 `MyWidget` 的类,并继承了 `Widget` 类。我们还设置了一个 `template` 属性,用于指定要使用的模板文件。 3. 创建一个模板文件 接下来,我们需要创建一个模板文件,用于定义我们的自定义 HTML 元素。这个模板文件应该包含在模块的 `static/src/xml` 目录下。下面是一个简单的例子: ```xml <template id="my_module.my_widget_template"> <div class="my-widget"> <h1>My Widget</h1> <p>This is my custom widget!</p> </div> </template> ``` 在这个例子中,我们定义了一个名为 `my_module.my_widget_template` 的模板,它包含一个 `div` 元素和一些文本。 4. 注册我们的 Widgets 类 最后,我们需要在模块中注册我们的 Widgets 类。这样,我们的自定义组件才能被正确地加载。下面是一个简单的例子: ```python odoo.define('my_module', function(require) { 'use strict'; var MyWidget = require('my_module.my_widget'); core.action_registry.add('my_module.my_widget', MyWidget); return { MyWidget: MyWidget }; }); ``` 在这个例子中,我们将 `MyWidget` 类添加到 `action_registry` 中,以便它可以被其他地方使用。 现在,我们已经成功地创建了一个自定义的 Widgets。我们可以在 Odoo 中使用它来添加我们想要的自定义 HTML 元素和 JavaScript 代码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值