Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
1 Ответить
13225 Представления

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>
Аватар
Отменить
Related Posts Ответы Просмотры Активность
1
авг. 24
2163
2
мая 24
2884
2
мар. 22
9801
1
янв. 22
2688
4
сент. 20
6112