Миграция с odoo 10 на odoo 12: элемент не найден в родительском представлении <xpath> - PullRequest
0 голосов
/ 10 апреля 2019

Я хочу перенести модуль из odoo 10 в odoo 12, но он показывает мне эту ошибку

L'élément '<xpath expr="//div[@t-if='(acquirers or tokens) and website_sale_order.amount_total']/div/ul/t/li[1]/label/span[@t-field='acquirer.image_small']">' ne peut être localisé dans la vue parente

Contexte de l'erreur :
Vue `payment_inherit`
[view_id: 1843, xml_id: n/a, model: n/a, parent_id: 1593]
None" while parsing None:7, near
<data inherit_id="website_sale.payment">
        <xpath expr="//div[@t-if='(acquirers or tokens) and website_sale_order.amount_total']" position="replace">
        </xpath>
        <xpath expr="//div[@t-if='(acquirers or tokens) and website_sale_order.amount_total']/div/ul/t/li[1]/label/span[@t-field='acquirer.image_small']" position="replace">
        </xpath>
    </data>

Я зарегистрировался на website_sale.payment и обнаружил, что t-field = 'acqur.image_small' больше не существует в связи с оплатой в odoo 12. Из дополнений:

<div id="payment_method" class="mt-3" t-if="(acquirers or tokens) and website_sale_order.amount_total">
                                <h3 class="mb24">Pay with </h3>
                                <t t-call="payment.payment_tokens_list">
                                    <t t-set="mode" t-value="'payment'"/>
                                    <t t-set="submit_txt">Pay Now</t>
                                    <t t-set="icon_right" t-value="1"/>
                                    <t t-set="icon_class" t-value="'fa-chevron-right'"/>
                                    <t t-set="submit_class" t-value="'btn btn-primary'"/>
                                    <t t-set="pms" t-value="tokens"/>
                                    <t t-set="form_action" t-value="'/shop/payment/token'"/>
                                    <t t-set="prepare_tx_url" t-value="'/shop/payment/transaction/'"/>
                                    <t t-set="partner_id" t-value="partner"/>

                                    <t t-set="back_button_icon_class" t-value="'fa-chevron-left'"/>
                                    <t t-set="back_button_txt" t-value="'Return to Cart'"/>
                                    <t t-set="back_button_class" t-value="'btn btn-secondary'"/>
                                    <t t-set="back_button_link" t-value="'/shop/cart'"/>
                                </t>
                            </div>

Как я могу решить эту проблему? я должен добавить t-field = 'acqur.image_small в моем представлении или использовать что-то еще.

1 Ответ

0 голосов
/ 23 апреля 2019

Я нашел немного странным, что

<xpath expr="//div[@t-if='(acquirers or tokens) and website_sale_order.amount_total']" position="replace"></xpath>

(который удаляет весь DIV) и

<xpath expr="//div[@t-if='(acquirers or tokens) and website_sale_order.amount_total']/div/ul/t/li[1]/label/span[@t-field='acquirer.image_small']" position="replace"></xpath>

(который удаляет изображение получателя внутри DIV) существует рядом, потому что первый должен удалить DIV, содержащий последний. Вы уверены, что не удаляете только часть "Оплатить с помощью"?

Попробуйте прокомментировать последний раздел xpath и убедитесь, что результат соответствует вашим ожиданиям. Вы также можете прокомментировать оба xpath и посмотреть, является ли то, что ожидается.

...