Odoo 10:从按钮打开XML视图

时间:2017-04-26 09:18:11

标签: python odoo-10

我经常搜索一个简单的例子,因为我是新手,这是我正在研究的第一个模块。我发现的所有例子都有点难以理解或者没有回应我的需要。

我有3个型号: 产品 包 Product_package(我需要根据我的项目数据库概念将此作为依赖表保存)

我需要从产品视图中创建product_package。

我在views / product.xml页面中尝试过:

<record model="ir.ui.view" id="product_form_view">
        <field name="name">product.form</field>
        <field name="model">tjara.product</field>
        <field name="arch" type="xml">
            <form string="Produit Form">
                <head>
                   <button name="%(product_package_list_action2)d" type='action' string='Ajouter Emballage'/>
                </head>
                <sheet>
                    <group>
                        <field name="name"/>
                        <field name="add_date"/>
                    </group>
                    <notebook>
                        <page string="Description">
                            <label for="description" string="Fiche du produit"/>
                            <field name="description"/>
                        </page>
                        <page string="Fournisseurs">
                            <label for="provider_ids"/>
                            <field name="provider_ids"/>
                        </page>
                        <page string="Clients">
                            <label for="client_ids"/>
                            <field name="client_ids"/>
                        </page>
                    </notebook>

                </sheet>
            </form>
        </field>
    </record>

在同一页面中我添加了:

<record model="ir.actions.act_window" id="product_package_list_action2">
        <field name="name">Emballages</field>
        <field name="res_model">tjara.product_package</field>
        <field name="view_type">form</field>
        <field name="view_mode">tree,form</field>
        <field name="view_id" ref="product_package_form_view"/>
    </record>

任何人都有解决方案来实现这一目标吗?

1 个答案:

答案 0 :(得分:0)

好的,我找到了解决方案。

这是产品Xml页面中的按钮:

                    <header>
                         <button name="%(product_package_list_action2)d" type='action' string='Ajouter Emballage'/>
                    </header>

在同一页面中,我插入以下内容:

    <record model="ir.actions.act_window" id="product_package_list_action2">
        <field name="name">Emballages</field>
        <field name="res_model">tjara.product_package</field>
        <field name="view_type">form</field>
        <field name="view_mode">tree,form</field>
        <field name="view_id" ref="product_package_form_view"/>
    </record>

在product_price Xml页面中,我有以下代码:

    <record model="ir.ui.view" id="product_package_form_view">
        <field name="name">product_package.form</field>
        <field name="model">tjara.product_package</field>
        <field name="arch" type="xml">
            <form string="Emballage Form">
                <sheet>
                    <group>
                        <field name="product_id"/>
                        <field name="package_id"/>
                        <field name="price"/>
                    </group>
                    <notebook>
                        <page string="Description">
                            <field name="description"/>
                        </page>
                    </notebook>

                </sheet>
            </form>
        </field>
    </record>

在清单中,我在产品Xml之前加载了product_package。这解决了我的问题,尽管我得到一个完整页面而不是弹出窗口。