类型错误:只能拼接元组(没有“名单”),以元组” - Odoo V9
问题描述:
我有这样的模式:类型错误:只能拼接元组(没有“名单”),以元组” - Odoo V9
class paymentTerm(models.Model):
_inherit = 'account.payment.term'
dte_sii_code = fields.Selection((
('1', '1: Contado'),
('2', '2: Credito'),
('3', '3: Otro')), 'DTE Sii Code',)
我想一些字段添加到这一选择,从另一个模块,像这样:
class paymentTerm(models.Model):
_inherit = 'account.payment.term'
dte_sii_code = fields.Selection(selection_add=[('1', 'COB1'),('2','COBRANZA'),('11','ACRED'),('12','CBOF'),('21','S/PAGO'),('32','ANTICIPO')])
但是当我尝试将其应用到我的模块,Odoo服务器抛出我:
2016-11-25 02:04:06,338 13570 ERROR odoo_solti_ultima openerp.modules.registry: Failed to load registry
Traceback (most recent call last):
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/modules/registry.py", line 386, in new
openerp.modules.load_modules(registry._db, force_demo, status, update_module)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/modules/loading.py", line 340, in load_modules
registry.setup_models(cr)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/modules/registry.py", line 197, in setup_models
model._setup_base(cr, SUPERUSER_ID, partial)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/api.py", line 250, in wrapper
return old_api(self, *args, **kwargs)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/api.py", line 354, in old_api
result = method(recs, *args, **kwargs)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/models.py", line 3019, in _setup_base
self._add_field(name, field.new())
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/api.py", line 248, in wrapper
return new_api(self, *args, **kwargs)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/models.py", line 471, in _add_field
field.setup_base(self, name)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/fields.py", line 406, in setup_base
self._setup_attrs(model, name)
File "/home/kristian/odoov9/odoo-9.0c-20161106/openerp/fields.py", line 1498, in _setup_attrs
self.selection = OrderedDict(self.selection + selection_add).items()
TypeError: can only concatenate tuple (not "list") to tuple
任何想法阿布这个?
我认为它与原始模型做的,但我不那么肯定
我的工作Odoo V9社区。
答
选择数据类型需要元组列表。你已经用元组声明了dte_sii_code。它应该是元组列表
请尝试下面的代码。
class paymentTerm(models.Model):
_inherit = 'account.payment.term'
dte_sii_code = fields.Selection([
('1', '1: Contado'),
('2', '2: Credito'),
('3', '3: Otro')], 'DTE Sii Code')
class paymentTerm(models.Model):
_inherit = 'account.payment.term'
dte_sii_code = fields.Selection(selection_add=[('4', 'COB1'),
('5','COBRANZA'),
('11','ACRED'),
('12','CBOF'),
('21','S/PAGO'),
('32','ANTICIPO')])
注:
我们应该关心的关键。如果你添加同一个键的元组,那么它将会被新的定义覆盖。
非常感谢你,是的,我怀疑这一点,但我并不确定,再次谢谢你! – NeoVe