I got KeyError: 'user_id'
Please use the copy button to report the error to your support service.
Odoo Server Error
Traceback (most recent call last): File "D:\odoo12\odoo\odoo\http.py", line 653, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "D:\odoo12\odoo\odoo\http.py", line 312, in _handle_exception raise pycompat.reraise(type(exception), exception, sys.exc_info()[2]) File "D:\odoo12\odoo\odoo\tools\pycompat.py", line 87, in reraise raise value File "D:\odoo12\odoo\odoo\http.py", line 695, in dispatch result = self._call_function(**self.params) File "D:\odoo12\odoo\odoo\http.py", line 344, in _call_function return checked_call(self.db, *args, **kwargs) File "D:\odoo12\odoo\odoo\service\model.py", line 97, in wrapper return f(dbname, *args, **kwargs) File "D:\odoo12\odoo\odoo\http.py", line 337, in checked_call result = self.endpoint(*a, **kw) File "D:\odoo12\odoo\odoo\http.py", line 938, in __call__ return self.method(*args, **kw) File "D:\odoo12\odoo\odoo\http.py", line 517, in response_wrap response = f(*args, **kw) File "D:\odoo12\odoo\addons\web\controllers\main.py", line 966, in call_button action = self._call_kw(model, method, args, {}) File "D:\odoo12\odoo\addons\web\controllers\main.py", line 954, in _call_kw return call_kw(request.env[model], method, args, kwargs) File "D:\odoo12\odoo\odoo\api.py", line 749, in call_kw return _call_kw_multi(method, model, args, kwargs) File "D:\odoo12\odoo\odoo\api.py", line 736, in _call_kw_multi result = method(recs, *args, **kwargs) File "<decorator-gen-67>", line 2, in button_immediate_upgrade File "D:\odoo12\odoo\odoo\addons\base\models\ir_module.py", line 71, in check_and_log return method(self, *args, **kwargs) File "D:\odoo12\odoo\odoo\addons\base\models\ir_module.py", line 596, in button_immediate_upgrade return self._button_immediate_function(type(self).button_upgrade) File "D:\odoo12\odoo\odoo\addons\base\models\ir_module.py", line 535, in _button_immediate_function modules.registry.Registry.new(self._cr.dbname, update_module=True) File "D:\odoo12\odoo\odoo\modules\registry.py", line 86, in new odoo.modules.load_modules(registry._db, force_demo, status, update_module) File "D:\odoo12\odoo\odoo\modules\loading.py", line 422, in load_modules force, status, report, loaded_modules, update_module, models_to_check) File "D:\odoo12\odoo\odoo\modules\loading.py", line 318, in load_marked_modules perform_checks=perform_checks, models_to_check=models_to_check File "D:\odoo12\odoo\odoo\modules\loading.py", line 178, in load_module_graph registry.setup_models(cr) File "D:\odoo12\odoo\odoo\modules\registry.py", line 267, in setup_models model._setup_fields() File "D:\odoo12\odoo\odoo\models.py", line 2596, in _setup_fields field.setup_full(self) File "D:\odoo12\odoo\odoo\fields.py", line 483, in setup_full self._setup_related_full(model) File "D:\odoo12\odoo\odoo\fields.py", line 526, in _setup_related_full field = target._fields[name] KeyError: 'user_id'
My Codeclass ts_test(models.Model):_name = 'ts_test.ts_test'@api.modeldef default_get(self, fields_list):defaults = super(ts_test, self).default_get(fields_list)defaults = self._default_get_request_parameters(defaults)return defaultsdef _default_employee(self):return self.env.context.get('default_employee_id') or self.env['hr.employee'].search([('user_id', '=', self.env.uid)], limit=1)def _default_get_request_parameters(self, values):new_values = dict(values)return new_valuesemployee_id = fields.Many2one('hr.employee', string='Employee', index=True, readonly=True, default=_default_employee, track_visibility='onchange',states={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}) # , default=_default_employee, track_visibility='onchange'manager_id = fields.Many2one('hr.employee', string='Manager', readonly=True)department_id = fields.Many2one('hr.department', string='Department', readonly=True,states={'draft': [('readonly', False)], 'confirm': [('readonly', False)]})user_id = fields.Many2one('res.users', string='User', related='employee_id.user_id', related_sudo=True, store=True, default=lambda self: self.env.uid, readonly=True)
How to fix this error?