odoo,如何创建正确的 xpath 表达式
odoo, how to create a correct xpath expression
我正在做 odoo getting started tutorial。我需要创建一个 xpath 表达式。我需要继承 base.view_users_form 视图并添加页面以显示属性列表。
这个页面应该在首选项页面之后,所以我创建了这个表达式。
<record id="inherited_res_user_view_form" model="ir.ui.view">
<field name="name">res.users.extended.form</field>
<field name="model">res.users</field>
<field name="inherit_id" ref="base.view_users_form"/>
<field name="arch" type="xml">
<xpath expr="//page[@name='preferences']" position="after">
<field name="property_ids"/>
</xpath>
</field>
</record>
和错误:
Element '<xpath expr="//page[@name='preferences']">' cannot be located in parent view
所以我知道我的表达不正确,但我不知道应该是什么。
我也不知道怎么才能知道。我 read 稍微了解一下它是如何工作的,我想我已经足够了解了。但我认为我需要查看 base.view_users_form 的源代码以了解他们如何命名其元素,以便我可以正确使用 xpath。但是我也找不到源代码。
如果仔细查看 view_users_form 代码,您会发现该页面名为 references
而不是 preferences
。
尝试以下 XPath:
<xpath expr="//page[@name='references']" position="after">
<page string="Properties" name="property_ids">
<field name="property_ids"/>
</page>
</xpath>
我正在做 odoo getting started tutorial。我需要创建一个 xpath 表达式。我需要继承 base.view_users_form 视图并添加页面以显示属性列表。 这个页面应该在首选项页面之后,所以我创建了这个表达式。
<record id="inherited_res_user_view_form" model="ir.ui.view">
<field name="name">res.users.extended.form</field>
<field name="model">res.users</field>
<field name="inherit_id" ref="base.view_users_form"/>
<field name="arch" type="xml">
<xpath expr="//page[@name='preferences']" position="after">
<field name="property_ids"/>
</xpath>
</field>
</record>
和错误:
Element '<xpath expr="//page[@name='preferences']">' cannot be located in parent view
所以我知道我的表达不正确,但我不知道应该是什么。
我也不知道怎么才能知道。我 read 稍微了解一下它是如何工作的,我想我已经足够了解了。但我认为我需要查看 base.view_users_form 的源代码以了解他们如何命名其元素,以便我可以正确使用 xpath。但是我也找不到源代码。
如果仔细查看 view_users_form 代码,您会发现该页面名为 references
而不是 preferences
。
尝试以下 XPath:
<xpath expr="//page[@name='references']" position="after">
<page string="Properties" name="property_ids">
<field name="property_ids"/>
</page>
</xpath>