Это нормальные поля не обновляются после установки модулей? - PullRequest
1 голос
/ 02 июля 2019

Я разрабатываю модуль на OpenERP 8.

Это очень простой код: он имеет только 1 новое поле (или столбец) в файле python и xpath в xml. Я знаю, что это работает, потому что однажды он был успешно установлен

Когда я пытаюсь установить / обновить мой модуль с интерфейсом модуля, иногда поле добавляется / обновляется в OpenERP, но иногда нет.

Я пытался запустить / остановить и перезапустить Openerp до и после установки моего модуля, но я не знаю, имеет ли это последствия. У меня нет ошибок или полезных вещей в логах.

То есть поля не добавляют / обновляют, а обновляют XML каждый раз ... Кто-нибудь имеет представление о том, что происходит, и о решении?

код питона:

# -*- coding: utf-8 -*-
from openerp.osv import fields, osv

class StockPickingIn(osv.osv):
    _name = "stock.picking.in"
    _inherit = "stock.picking.in"

    _columns = {
        'adquat_ack_recep': fields.boolean('Accusé de réception'),
    }

xml код:

<?xml version="1.0" encoding="UTF-8"?>
<openerp>
    <data>

        <record id="view_picking_in_form_adquat" model="ir.ui.view">
            <field name="name">stock.picking.in.form.adquat</field>
            <field name="model">stock.picking.in</field>
            <field name="inherit_id" ref="stock.view_picking_in_form"/>
            <field name="arch" type="xml">
                <xpath expr="//field[@name='stock_journal_id']" position="after">
                    <field name="adquat_ack_recep" />
                </xpath>
            </field>
        </record>

        <record id="view_picking_in_tree_adquat" model="ir.ui.view">
            <field name="name">stock.picking.in.tree.adquat</field>
            <field name="model">stock.picking.in</field>
            <field name="inherit_id" ref="stock.view_picking_in_tree"/>
            <field name="arch" type="xml">
                <xpath expr="//field[@name='state']" position="after">
                    <field name="adquat_ack_recep" />
                </xpath>
            </field>
        </record>

    </data>
</openerp>

Я думаю, что это работает для обновления полей с помощью командной строки -u!

Но моя другая проблема не решена: у меня нет пустых флажков в представлении формы

enter image description here

И в виде формы у меня не может быть установлен этот флажок:

enter image description here Я нажимаю на правку, проверяю и сохраняю: флажок возвращается к пустому!

Я видел в базе данных значение, сохраненное как true или false, но оно не отображается в интерфейсе

Ответы [ 2 ]

1 голос
/ 02 июля 2019

Вы должны увидеть следующую ошибку

ValidateError

Произошла ошибка при проверке арки поля (ей): Неверный XML для View Architecture!

Поскольку adquat_ack_recep определен в stock.picking, и вы добавляете его в форму stock.picking.in.

Вам необходимо наследовать от stock.picking.in.

_inherit = "stock.picking.in"

Редактировать:

Добавить поле adquat_ack_recep для обеих моделей stock.picking и stock.picking.in (stock.picking.in метод чтения был переопределен для чтения значений из* Модель 1028 *).Взгляните на поля, не сохраняющие проблему

0 голосов
/ 02 июля 2019

Проблема может возникнуть из-за одновременного запуска двух экземпляров. убедитесь, что вы запускаете один экземпляр. Вы также можете обновить модуль через командную строку, это может решить вашу проблему см. ссылку для обновления модуля через командную строку.

...