odoo学习小技巧

本文介绍了Odoo开发中的多个实用技巧,包括在tree视图中设置颜色、定义搜索框、条件筛选、添加和删除字段、模型继承扩展、预设字段值、删除数据、模型属性注释、自动化属性、窗口动作以及各种字段和视图的高级用法。通过这些技巧,开发者可以更加高效地定制和优化Odoo应用。
摘要由CSDN通过智能技术生成

1、在tree视图中:

 <tree colors="decoration-muted:is_done==True">

colors="decoration-muted:is_done==True":把is_done=True的设置为灰色

2、odoo中定义搜索框

<field name="arch" type="xml">

<search>

<field name="name"/>

<filter string="Not Done" domain="[('is_done','=',False)]"/>

<filter string="Done" domain="[('is_done','!=',False)]"/>

</search>

</field>

3、条件筛选

 domain = [('is_done', '=', True), '|', ('user_id', '=', self.env.uid),                 ('user_id', '=', False)]

这个过滤器表达式遵循称为domain的Odoo特定语法:它由条件组成的列表表示,其中每个条件是元组。这些条件默认是用逻辑与(And)连接起来的,即条件需要同时成立,如果不是默认逻辑连接符号比如“|”符号(逻辑或),则运算操作符会影响到其后面的两个操作数(即采用波兰表达式)我们将在第6章-视图 - 用户界面设计这一章讨论更多关于域的细节

这里的意思是,is_done=Trun或者不是当前用户或者当前记录

4、在现有的视图上加新的字段:

<xpath expr="//field[@name]='is_done'" position="before">

<field name="date_deadline" />

</xpath>

或者:

<field name="is_done" position="before">

<field name="date_deadline" />

</field>

after:将内容添加到父元素之中,匹配的节点之后。 before:添加内容在匹配节点之前。 inside(默认值):匹配节点内的追加内容。 replace:替换匹配的节点。如果使用空内容,它将删除该匹配的元素。从Odoo 10开始,它还允许用其他标记包装一个元素,通过在内容中使用$0来表示被替换的元素。 attributes:修改匹配元素的XML属性。在元素内容使用<attribute name =“attr-name”>实现给属性name设置新属性值attr-name。

5、odoo中模块的继承扩展:

from odoo import models 

class TodoTask(models.Model): 

_name = 'todo.task' 

_inherit = 'mail.thread'

这通过将mail.thread模型中的特性复制到todo.task模型中来扩展它。

6、使用过表达式预设xml的值:

定义字段值的更精细的替代方法是eval属性。 它评估一个Python表达式并将结果值分配给字段。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值