首页 > 解决方案 > odoo 12中继承字段的表单视图

问题描述

我创建了一个新模型。该模型继承了其他模型。这意味着我的模型包含继承模型的字段。现在,我正在创建自定义模型的表单视图,并在该表单视图中显示继承的模型字段。但问题是,在视图中显示字段后,它将显示它们的默认视图,而不是新定义的视图。

以下是代码:

示例.py


class SurveyCreate(models.Model):

    _name = 'survey.create'
    _inherit = ['survey.survey','survey.question','survey.page']

sample_view.xml

<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>

    <record id="survey_create_form" model="ir.ui.view">
    <field name="name">Survey Form</field>
    <field name="model">survey.create</field>
    <field name="arch" type="xml">
        <form>
            <sheet>
                <group><!-- survey.survey  -->
                    <field name="title"/>
                </group>

                 <group>
                    <h2>survey_survey one2many </h2>
                    <field name="page_ids" mode="tree"/>
                    <tree>
                        <field name="title"/>
                        <field name="question_ids"/>
                        <control>
                            <create name="Add Page"/>
                        </control>
                    </tree> 
                </group>

                <group col="4" colspan="2"><!-- survey.question  -->
                    <field name="question"/>
                    <field name="type"/>
                </group>
            </sheet>
        </form>
    </field>
    </record>

    <record id="survey_create_action" model="ir.actions.act_window">
    <field name="name">Survey Action</field>
    <field name="res_model">survey.create</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form</field>
    <field name="help" type="html">
        <p class="oe_view_noncontent_create">
            Create Survey
        </p>
    </field>
    </record>

    <menuitem id="main_menu" name="Survey Create" action="survey_create_action"/>
</data>
</odoo>

我希望提供的描述很清楚。如果没有,请告诉我。我还附上了缺少表单视图的屏幕。或任何其他替代方式?

继承字段的错误表单视图

标签: inheritanceodooformview

解决方案


尝试下一个结构,其中<tree>标签位于标签内<field>

<field name="page_ids" mode="tree">
    <tree>
        <field name="title"/>
        <field name="question_ids"/>
        <control>
            <create name="Add Page"/>
        </control>
    </tree>
</field>

推荐阅读