04 定义Tree和Form View(学Odoo,就得Do)

11 篇文章 2 订阅
7 篇文章 0 订阅

表单是企业管理的重要组成部分,这一节我们就来介绍在Odoo中如何制作列表页和表单页。

还记得我们编辑过的patient_menu.xml吗?我们在这个xml文件里建立了菜单和动作,现在我们要添加form信息了

我们用最简方式做一个先,然后再进行美化,请记住,xml文件位置里,这个form要摆在action前面:

<!-- Patient Form -->
    <record id="patient_form" model="ir.ui.view">
        <field name="name">hospital.patient.form</field>
        <field name="model">hospital.patient</field>
        <field name="arch" type="xml">
            <form string="Patients">
                <field name="patient_name"/>
                <field name="patient_age"/>
                <field name="notes"/>
                <field name="image"/>
            </form>
        </field>
    </record>

我们升级一下模块,看看效果,如何升级模块我已在前面的章节讲过了,也因为我们还没有配置权限,所以我们先变成Superuser来看。

这是一个很丑的界面,接下来我们用<<group></group>标记符来美化,注意看sheet里面的部分

    <!-- Patient Form -->
    <record id="patient_form" model="ir.ui.view">
        <field name="name">hospital.patient.form</field>
        <field name="model">hospital.patient</field>
        <field name="arch" type="xml">
            <form string="Patients">
                <sheet>
                    <group>
                        <group>
                            <field name="patient_name"/>
                        </group>
                        <group>
                            <field name="patient_age"/>
                        </group>
                        <group>
                            <field name="notes"/>
                            <field name="image"/>
                        </group>
                    </group>
                </sheet>
            </form>
        </field>
    </record>

patient_name和patient_age各分两列,notes和image合在一列。这样的界面看起来舒服多了吧:)

下面,我们一鼓作气,把Tree这个列表功能解决掉,同Form的道理一样,只是略微修改一些地方:

    <!-- Patient Tree -->
    <record id="patient_tree" model="ir.ui.view">
        <field name="name">hospital.patient.tree</field>
        <field name="model">hospital.patient</field>
        <field name="arch" type="xml">
            <tree string="Patients">
                <field name="patient_name"/>
                <field name="patient_age"/>
                <field name="notes"/>
                <field name="image"/>
            </tree>
        </field>
    </record>

注意看一下,form的地方换成了tree。我们添加一条记录,这样可以看到列表的效果

我们点击一下主菜单Hospital

OK,接下来就轮到绑定权限了,Odoo实现CRUD速度不是一般的快啊!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值