Odoo 10: удаление кнопки «Создать» из дерева - PullRequest
0 голосов
/ 23 октября 2018

Я хочу удалить кнопку «Создать и импортировать» в моем модуле и заменить ее кнопкой «Синхронизация». Я попробовал следующий код:

<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
    <t t-extend="ListView.buttons">
        <t t-jquery="button.o_list_button_add" t-operation="before">
            <t t-if="widget.model=='simcard.simcard'">
                <t t-set="widget.options.addable" t-value="false"/>
                <t t-set="widget.options.import_enabled" t-value="false"/>
                <button class="btn btn-sm btn-default sync_button" type="button">Sync</button>
            </t>
        </t>
    </t>
</templates>

Это добавляет кнопку «false» рядом с моей кнопкой «Синхронизация».Затем я попробовал следующее решение, которое не удаляет кнопку «Создать», но удаляет кнопку «Импорт»:

    <?xml version="1.0" encoding="UTF-8"?>
    <templates id="template" xml:space="preserve">
        <t t-extend="ListView.buttons">
            <t t-jquery="button.o_list_button_add" t-operation="after">
                <t t-if="widget.model=='simcard_piavita.simcard_piavita'">
             <button class="btn btn-sm btn-default sync_button" type="button">Sync</button>
                    <t t-set="widget.options.addable" t-value="false"/>

                    <t t-set="widget.options.import_enabled" t-value="false"/>

                </t>
            </t>
        </t>
    </templates>

Затем я пробовал решение ниже:

<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
    <t t-extend="ListView.buttons">
        <t t-jquery="button.o_list_button_add" t-operation="replace">
            <t t-if="widget.model=='simcard_piavita.simcard_piavita'">
         <button class="btn btn-sm btn-default sync_button" type="button">Sync</button>
                <t t-set="widget.options.addable" t-value="false"/>

                <t t-set="widget.options.import_enabled" t-value="false"/>

            </t>
        </t>
    </t>
</templates> 

. Оно удаляет кнопку «Создать» из других установленных модулей.также.Есть ли идеальный способ удалить кнопку «Создать» и сохранить кнопку «Синхронизация» в моем модуле?

1 Ответ

0 голосов
/ 24 октября 2018

Если вы хотите удалить кнопку создания в одном представлении, тогда добавьте атрибут create = "false"

<form string="Picking" create="false" sync="true">

Если вы хотите добавить кнопку синхронизации в одном представлении, вы также можетереле по атрибуту

<templates id="template" xml:space="preserve">
    <t t-jquery="button.o_form_button_save" t-operation="after">
        <button t-if="widget.is_action_enabled('sync')" type="button" class="btn btn-primary btn-sm o_form_button_save" accesskey="s">
        Sync
        </button>
    </t>
</templates> 
...