我試圖創建一個功能來通過嚮導創建大量實例,將值分配給一些many2many字段,但在測試時出現錯誤:通過將值分配給many2many字段創建塊對象
Singleton expected: model3(167, 168, 169, 170, 171, 172, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 188, 187, 188, 190, 191, 193, 194, 195, 1978, 1978, 2007, 1920, 202, 203, 204, 20, 20, 20, 20, 20, 20, 20, 20, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246)
我留下的代碼,以防萬一你能幫助我。
class Modelo1Model(models.Model):
_name = 'modelo1'
mod1_modelo3_ids = fields.Many2many('modelo3')
class Modelo2Model(models.Model):
_name = 'modelo2'
mod2_modelo3_ids = fields.Many2many('modelo3')
class Modelo3Model(models.Model):
_name = 'modelo3'
#...
class Modelo1Wizard(models.TransientModel):
_name = 'modelo1.wizard'
def _default_i(self):
return self.env['modelo1'].browse(self._context.get('active_ids'))
modelo1_ids = fields.Many2many(
'modelo1',
default = _default_i)
@api.multi
def create_modelo2(self):
for i in self.modelo1_ids:
registros_many2many = i.mod2_modelo3_ids.ids
i.ensure_one()
modelo2_obj = self.env['modelo2']
modelo2_vals = {
'mod2_modelo3_ids': registros_many2many
}
modelo2_create_id = modelo2_obj.create(modelo2_vals)
你能發佈完整的錯誤消息? – travisw
結果=方法(倫理委員會,*指定參數時,** kwargs) 文件 「/opt/odoo/server/addons_custom/addons/prueba12_wizard/wizard/modelo1_wizard.py」,線路70,在create_modelo2 「mod1_modelo3_ids, 文件「/文件「/opt/odoo/server/openerp/models.py」,第5323行,在ensure_one中 raise except_orm()/ opt/odoo /server/openerp/field.py「,第825行,在__get__中 record.ensure_one() 「ValueError」,「期望的單身人士:%s」自己) except_orm:('ValueError','Expected singleton:modelo3(250,252)') – Davoraf