odoo 12中继承字段的表单视图

时间:2019-12-13 06:43:03

标签: inheritance odoo formview

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

以下是代码:

sample.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>

我希望前提是清除变形。如果没有,请告诉我。另外,我还附有缺少表格视图的屏幕。或任何其他替代方式?

Wrong form view for inherited fields

2 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:0)

感谢@ neo-oien重播。我有什么问题。我创建树视图2次。