AttributeError: объект 'NoneType' не имеет атрибутов 'groups' в odoo 13
Я новичок в odoo-13, и мне нужна помощь в отладке этой ошибки. Мой мотив - создать собственный модуль в odoo с использованием python3. Он работает в моем локальном установленном odoo, но если я попытался установить его на другом сервере, установленном oddo, он выдаст следующую ошибку, пожалуйста, помогите мне решить эту ошибку. Спасибо в будущем.
Odoo Server Error
Traceback (most recent call last):
File "/opt/odoo/odoo/odoo/http.py", line 619, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/opt/odoo/odoo/odoo/http.py", line 309, in _handle_exception
raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
File "/opt/odoo/odoo/odoo/tools/pycompat.py", line 14, in reraise
raise value
File "/opt/odoo/odoo/odoo/http.py", line 664, in dispatch
result = self._call_function(**self.params)
File "/opt/odoo/odoo/odoo/http.py", line 345, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/opt/odoo/odoo/odoo/service/model.py", line 93, in wrapper
return f(dbname, *args, **kwargs)
File "/opt/odoo/odoo/odoo/http.py", line 338, in checked_call
result = self.endpoint(*a, **kw)
File "/opt/odoo/odoo/odoo/http.py", line 910, in __call__
return self.method(*args, **kw)
File "/opt/odoo/odoo/odoo/http.py", line 510, in response_wrap
response = f(*args, **kw)
File "/opt/odoo/odoo/addons/web/controllers/main.py", line 1324, in call_button
action = self._call_kw(model, method, args, kwargs)
File "/opt/odoo/odoo/addons/web/controllers/main.py", line 1312, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/opt/odoo/odoo/odoo/api.py", line 395, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/opt/odoo/odoo/odoo/api.py", line 382, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "<decorator-gen-58>", line 2, in button_immediate_install
File "/opt/odoo/odoo/odoo/addons/base/models/ir_module.py", line 72, in check_and_log
return method(self, *args, **kwargs)
File "/opt/odoo/odoo/odoo/addons/base/models/ir_module.py", line 463, in button_immediate_install
return self._button_immediate_function(type(self).button_install)
File "/opt/odoo/odoo/odoo/addons/base/models/ir_module.py", line 573, in _button_immediate_function
modules.registry.Registry.new(self._cr.dbname, update_module=True)
File "/opt/odoo/odoo/odoo/modules/registry.py", line 85, in new
odoo.modules.load_modules(registry._db, force_demo, status, update_module)
File "/opt/odoo/odoo/odoo/modules/loading.py", line 420, in load_modules
loaded_modules, update_module, models_to_check)
File "/opt/odoo/odoo/odoo/modules/loading.py", line 312, in load_marked_modules
perform_checks=perform_checks, models_to_check=models_to_check
File "/opt/odoo/odoo/odoo/modules/loading.py", line 231, in load_module_graph
module.with_context(overwrite=overwrite)._update_translations()
File "/opt/odoo/odoo/odoo/addons/base/models/ir_module.py", line 889, in _update_translations
self.env['ir.translation']._load_module_terms(mod_names, filter_lang)
File "/opt/odoo/odoo/odoo/addons/base/models/ir_translation.py", line 822, in _load_module_terms
tools.trans_load(self._cr, trans_file, lang, verbose=False, module_name=module_name, context=context)
File "/opt/odoo/odoo/odoo/tools/translate.py", line 1053, in trans_load
result = trans_load_data(cr, fileobj, fileformat, lang, verbose=verbose, module_name=module_name, context=context)
File "/opt/odoo/odoo/odoo/tools/translate.py", line 1103, in trans_load_data
for row in reader:
File "/opt/odoo/odoo/odoo/tools/translate.py", line 600, in __iter__
_, module = match.groups()
AttributeError: 'NoneType' object has no attribute 'groups'
2 ответа
Я обнаружил проблему в одном из файлов.po (переводов) в моем пользовательском модуле.
Мне пришлось переместить проблемный файл из каталога i18n (переименование файла тоже работает), затем я экспортировал файл перевода и снова сделал перевод.
У меня была такая же проблема, и я также нашел, откуда она исходит. Это может быть полезно, если вы не хотите удалять файл перевода.
Это связано с отсутствием тега «модуль» в файле .po. Это типичный пример перевода в файле .po.
#. module: sale
#: model:ir.actions.report,print_report_name:sale.action_report_pro_forma_invoice
msgid "'PRO-FORMA - %s' % (object.name)"
msgstr "'PRO-FORMA - %s' % (object.name)"