第五章 Odoo开发之模视图(基础版本)

本文介绍了Odoo中八种主要的视图类型,包括表单视图、树形视图、看板视图、图表视图、透视表视图、活动视图和calendar视图,详细解释了它们的功能、用法和在数据展示中的应用场景。

目录

1、什么是视图

常用的视图类型

2、表单视图(Form)

​编辑

3、树形视图(Tree)

​编辑

4、看板视图(Kanban)

​编辑

 5、图表视图(Graph)

​编辑

6、透视表视图(Pivot)

​编辑

7、活动视图(Activity)

​编辑

8、calendar视图 


1、什么是视图

 在Odoo中,视图(View)是用户界面的一部分,用于呈现和交互式地展示数据。视图定义了数据在用户界面上的外观和行为。每个视图都与一个特定的模型关联,而模型则对应数据库中的数据表。Odoo支持多种类型的视图,包括表单视图、树形视图、看板视图、图表视图、透视表视图等。

常用的视图类型

  1. 表单视图(Form View): 用于显示和编辑单个记录的详细信息,通常包含输入字段、按钮和其他交互元素。

  2. 树形视图(Tree View): 以树状结构显示多个记录,适用于显示层次结构或列表数据。

  3. 看板视图(Kanban View): 以卡片形式显示记录,适用于需要状态切换的情况,比如任务流程。

  4. 图表视图(Graph View): 以图表的形式呈现数据,通常用于展示数据的趋势和关系。

  5. 透视表视图(Pivot View): 以透视表的形式展示数据,提供数据的汇总和分析功能。

  6. 活动视图(Activity View):以活动流的方式展示数据,查看和管理与记录相关的活动。

  7. calendar视图(Calendar view):以日期的形式展示数据。适用于需要按时间安排的模型,例如日历事件、任务和预约等。

下面详细的介绍每种视图的具体的用法

2、表单视图(Form)

表单视图用于显示和编辑单个记录的详细信息

<record id="view_partner_form" model="ir.ui.view">
    <field name="name">partner.form</field>
    <field name="model">res.partner</field>
    <field name="arch" type="xml">
        <form>
            <group>
                <field name="name"/>
                <field name="email"/>
                <!-- 其他字段 -->
            </group>
        </form>
    </field>
</record>

3、树形视图(Tree)

 树形视图用于显示多个记录,并以树状结构呈现

<record id="view_partner_tree" model="ir.ui.view">
    <field name="name">partner.tree</field>
    <field name="model">res.partner</field>
    <field name="arch" type="xml">
        <tree>
            <field name="name"/>
            <field name="email"/>
            <!-- 其他字段 -->
        </tree>
    </field>
</record>

4、看板视图(Kanban)

看板视图用于以卡片形式显示记录,适用于状态切换等情况

    <record model="ir.ui.view" id="view_kanban_book">
        <field name="name">Book kanban</field>
        <field name="model">library.book</field>
        <field name="arch" type="xml">
            <kanban class="o_modules_kanban">
                <field name='name' />
                <templates>
                    <t t-name="kanban-box">    
                        <!-- 在这里定义kanban box的内容 -->
                        <!-- 例如,显示模型中的某个字段 -->
                        <div class="oe_kanban_global_click">
                            <div class="oe_kanban_primary">
                                <field name="name"/>
                            </div>
                        </div>
                    </t>
                </templates>
            </kanban>
        </field>
    </record>

 5、图表视图(Graph)

图表视图用于以图表形式呈现数据

<record id="view_partner_graph" model="ir.ui.view">
    <field name="name">partner.graph</field>
    <field name="model">res.partner</field>
    <field name="arch" type="xml">
        <graph>
            <field name="name"/>
            <field name="email"/>
            <!-- 其他字段 -->
        </graph>
    </field>
</record>

6、透视表视图(Pivot)

透视表视图用于以透视表的形式展示数据

<record id="view_partner_pivot" model="ir.ui.view">
    <field name="name">partner.pivot</field>
    <field name="model">res.partner</field>
    <field name="arch" type="xml">
        <pivot>
            <field name="name"/>
            <field name="email"/>
            <!-- 其他字段 -->
        </pivot>
    </field>
</record>

7、活动视图(Activity)

如待办事项、提醒和日历事件等,这些都与记录相关联

<record id="view_activity" model="ir.ui.view">
    <field name="name">activity.view</field>
    <field name="model">crm.lead</field>
    <field name="arch" type="xml">
        <activity string="Contacts">
            <field name="name" />
                <templates>
                    <div t-name="activity-box">
                        <img t-att-src="activity_image('res.partner', 'avatar_128', record.id.raw_value)" role="img" t-att-title="record.id.value" t-att-alt="record.id.value"/>
                     <div>
                        <field name="name" />
                     </div>
                    </div>
                </templates>
         </activity>
    </field>
</record>

8、calendar视图

用于展示日期、事件和任务的视图类型

<record id="view_calendar" model="ir.ui.view">
    <field name="name">calendar.view</field>
    <field name="model">crm.lead</field>
    <field name="arch" type="xml">
        <calendar date_start = 'date_start'>
            <!-- Calendar View Definition Goes Here -->
            <field name="name"/>
            <field name="date_deadline"/>
            <field name="user_id"/>
        </calendar>
    </field>
</record>

 在后面内容中,我会将每种视图的详细用法,涉及到的所有参数都写来出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dear.爬虫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值