2016-12-29 2 views
0

Я использую Odoo Online и пытаюсь установить собственный модуль, который я создал. Я установил Base import module, чтобы разрешить установку пользовательских модулей в экземпляре Odoo Online.Установите пользовательский модуль для Odoo Online с базовым модулем импорта

Затем я создал простой модуль, состоящий из следующих действий:

mymodule/ 
    __init__.py 
    __manifeset__.py 
    product.py 
    views/ 
     product_product_tree.xml 

Вот содержание файлов:

__init__.py

__manifest__.py

{ 
    'name': "My Module", 
    'version': '1.0', 
    'depends': ['stock', 'sale', 'contacts', 'purchase'], 
    'description': """ 
    Add custom functionality. 
    """, 
    # data files always loaded at installation 
    'data': [ 
     'views/product_product_tree.xml', 
    ], 
} 

product.py

from odoo import models, fields, api 

class ProductProduct(models.Model): 
    _inherit = 'product.product' 

    x_reserved_qty = fields.Float(string='Reserved', readonly=True) 

просмотров/product_product_tree.xml

<odoo> 
    <data> 
    <record model="ir.ui.view" id="mymodule.product_product_tree"> 
     <field name="name">x_product.product.tree</field> 
     <field name="model">product.product</field> 
     <field name="priority" eval="16"/> 
     <field name="inherit_id" ref="product.product_product_tree_view"/> 
     <field name="arch" type="xml"> 
     <xpath expr="//tree" position="inside"> 
      <field name="x_reserved_qty"/> 
     </xpath> 
     </field> 
    </record> 
    </data> 
</odoo> 

Я тогда застегивать файл и импортировать его с помощью модуля Base Import. Это приводит к ошибке и модуль не устанавливает. Ошибка возникает, потому что поле x_reserved_qty не существует на модели, хотя я определил его в product.py. Похоже, что часть python модуля никогда не выполняется.

Я могу подтвердить это, закомментировав строку <field name="x_reserved_qty"/> и переиздавая модуль. На этот раз он успешно импортируется, но когда я просматриваю Settings > Technical > Database Structure > Fields, я не вижу, чтобы мое новое поле указывалось где угодно.

Кто-нибудь знает, поддерживаются ли файлы python для пользовательских модулей, импортированных с помощью этого метода модуля базового импорта? Описание Модуль говорит:

Этот модуль позволяет авторизованным пользователям импортировать модуль пользовательских данных (XML-файлы и статические assests) для настройки цели.

В нем конкретно упоминаются .xml и статические активы, но не файлы python. Итак, мне просто интересно, что я делаю что-то не так в моих файлах python, из-за чего это не сработает, или если оно на самом деле не предназначено для поддержки файлов python в модулях.

ответ

2

Он не поддерживает файлы Python (возможно, для защитных пугов). Для того, чтобы сервер odoo скомпилировал ваши файлы python, его нужно перезапустить. То, что вы не можете сделать, когда используете runbot или Odoo, размещает ваш экземпляр.

+0

есть ли онлайн-решения для этого! или мы всегда покупаем сервер для наших клиентов? и использовать его в локальной сети – Cherif