Deepak Raj
Deepak Raj

Reputation: 336

AttributeError: 'NoneType' object has no attribute 'groups' in odoo 13

I am new to odoo-13 and I need help in debugging this error. My motive is to create a custom module in odoo using python3. It is working in my local installed odoo but if I tried to install it in the other server installed oddo it produces the following error please help me solve this error. Thanks in future.

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'

Upvotes: 3

Views: 1904

Answers (2)

jb jourget
jb jourget

Reputation: 11

I was having the same issue and I also found where it was comming from. It can be helpful if you don't want to delete your translation file.

This is due to a missing 'module' tag in the .po file. This is a typical example of a translation in a .po file.

#. 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)"

Upvotes: 1

I found the problem in one of the .po files (translations) in my custom module.

I had to move the offending file out of the i18n directory (renaming the file also works), then I exported the translation file and did the translation again.

Upvotes: 1

Related Questions