【发布时间】:2022-11-12 06:56:46
【问题描述】:
我已经声明了两个选择字段
x = fields.Selection([('x A','x A'),('x B','x B')],string='X')
y = fields.Selection([('0','0')],string='Y')
然后我尝试将选择选项添加到是的场上改变
@api.onchange('x')
def onchange_x(self):
self.y = fields.Selection(selection_add = [('y A', 'y A'),('y B', 'y B')])
当我从 x 选择中选择时,我收到此错误
Traceback(最近一次调用最后一次):文件 “/opt/odoo/odoo/addons/base/models/ir_http.py”,第 237 行,在 _dispatch 结果 = request.dispatch() 文件“/opt/odoo/odoo/http.py”,第 687 行,在调度中 结果 = self._call_function(**self.params) 文件“/opt/odoo/odoo/http.py”,第 359 行,在 _call_function return checked_call(self.db, *args, **kwargs) File "/opt/odoo/odoo/service/model.py", line 94, in wrapper return f(dbname, *args, **kwargs) File "/opt/odoo/odoo/http.py", line 348, in checked_call 结果 = self.endpoint(*a, **kw) 文件“/opt/odoo/odoo/http.py”,第 916 行,在称呼return self.method(*args, **kw) 文件“/opt/odoo/odoo/http.py”,第 535 行,在 response_wrap 响应 = f(*args, **kw) 文件“/opt/odoo/addons/web/controllers/main.py”,第 1346 行,在 call_button action = self._call_kw(model, method, args, kwargs) 文件“/opt/odoo/addons/web/controllers/main.py”,第 1334 行,在 _call_kw return call_kw(request.env[model], method, args, kwargs) File "/opt/odoo/odoo/api.py", line 464, in call_kw 结果 = _call_kw_multi(method, model, args, kwargs) 文件“/opt/odoo/odoo/api.py”,第 451 行,在 _call_kw_multi 结果 = 方法(recs,*args,**kwargs)文件“/opt/odoo/custom-addons/om_x/models/employee.py”,第 34 行,在 测试函数 self.em_pole = fields.Selection(selection_add=[('Pole A', 'Pole A'), ('Pole B', 'Pole B')], string='Pole') 文件 “/opt/odoo/odoo/fields.py”,第 1217 行,在放records.write({self.name: write_value}) 文件“/opt/odoo/addons/hr/models/hr_employee.py”,第 317 行,写入 res = super(HrEmployeePrivate, self).write(vals) 文件“/opt/odoo/addons/mail/models/mail_thread.py”,第 323 行,写入 结果 = super(MailThread, self).write(values) 文件“/opt/odoo/addons/mail/models/mail_activity_mixin.py”,第 243 行,在 写 return super(MailActivityMixin, self).write(vals) File "/opt/odoo/odoo/models.py", line 3858, in write field.write(self, value) 文件“/opt/odoo/odoo/fields.py”,第 1015 行,写入 cache_value = self.convert_to_cache(value, records) 文件“/opt/odoo/odoo/fields.py”,第 2534 行,在 convert_to_cache raise ValueError("%s 的错误值:%r" % (self, value)) 异常
上述异常是以下异常的直接原因:
Traceback(最近一次调用最后一次):文件“/opt/odoo/odoo/http.py”, 第 643 行,在 _handle_exception 中 return super(JsonRequest, self)._handle_exception(exception) 文件“/opt/odoo/odoo/http.py”,第 301 行,在 _handle_exception 从 new_cause ValueError 引发 exception.with_traceback(None):hr.employee.y 的值错误:<odoo.fields.Selection>
你能帮我吗 。
【问题讨论】:
-
这在 Odoo 中是不可能的,请在 One2many 字段中尝试
-
你能解释更多吗?
-
怎么做 ??