コンテンツへスキップ
メニュー
この質問にフラグが付けられました
1 返信
13247 ビュー

From always, Xpath has matched all elements with a given query, and I had to add [1] at the end to match only the first match.

In OpenERP 7 I have this view definition:

<record id="view" model="ir.ui.view">
    <field name="name">mail.message.full_expand</field>
    <field name="model">mail.message</field>
    <field name="inherit_id" ref="mail.view_message_form"/>
    <field name="arch" type="xml">
        <xpath expr="//field" position="attributes">
            <attribute name="readonly">1</attribute>
        </xpath>
    </field>
</record>

Its purpose is to copy another view, but fully read-only. However it stops at the first match. Is there any way to make Xpath match every field?

アバター
破棄
最善の回答

You want to edit the root form tag directly to give it edit="false":

 <record id="view" model="ir.ui.view">
    <field name="name">mail.message.full_expand</field>
    <field name="model">mail.message</field>
    <field name="inherit_id" ref="mail.view_message_form"/>
    <field name="arch" type="xml">
        <xpath expr="/form" position="attributes">
            <attribute name="edit">false</attribute>
        </xpath>
    </field>
</record>
アバター
破棄
関連投稿 返信 ビュー 活動
1
8月 24
2175
2
5月 24
2901
2
3月 22
9823
1
1月 22
2696
4
9月 20
6151