Odoo уже известная ошибка
1. Многоязычная проблема названия категории модуля:
base / module / module.py
def _update_category(self, cr, uid, mod_browse, category='Uncategorized'):
current_category = mod_browse.category_id
current_category_path = []
while current_category:
current_category_path.insert(0, current_category.name)
current_category = current_category.parent_id
categs = category.split('/')
if categs != current_category_path:
# 这里不能比较,categs获取是原文,current_category_path通过current_category.name获取,name是可翻译字段,故不能比较
cat_id = create_categories(cr, categs)
mod_browse.write({'category_id': cat_id}
2. Проблема с разрешением _rec_name
Если _rec_name является полем many2one, при вычислении display_name необходимо вызвать name_get () связанной модели, поэтому требуется разрешение на чтение связанной модели, и это разрешение здесь не проверяется:
odoo / openerp / models.py 1665 руб.
@api.depends(lambda self: (self._rec_name,) if self._rec_name else ())
def _compute_display_name(self):
names = dict(self.name_get()) # _rec_name可能无权限
for record in self:
record.display_name = names.get(record.id, False)
3. Параметры параметров полей odoo date и datetime type отсутствуют.
odoo / addons / web / static / src / js / views / form_widgets.js
Строка: 484
return new datepicker.DateTimeWidget (this);
改为 :
вернуть новый datepicker.DateTimeWidget (this, this.options);
Маршруты : 533
вернуть новый datepicker.DateWidget (это);
改为 :
вернуть новый datepicker.DateWidget (this, this.options);