This question has been flagged
4 Replies
5944 Views

Hi, I am trying to copy ids into a many2many field, but it throws list index out of range error. Can someone please help me where I am doing a mistake


@api.onchange('course_id')
def get_default_subject_ids(self):
    res = []
    if len(self.course_id.subject_ids):
        for subject in self.course_id.subject_ids :
            res.append(subject.id)
        self.subject_ids= [0,0,res]
    return True
 
Debugged it and observed that it throws list index out of range @ self.subject_ids= [0,0,res]

Regards,

Narender

Avatar
Discard

i have tried that before, but it then throws

argument of type 'bool' is not iterable error

Best Answer

EDITED:

can you try this one?: self.subject_ids = [(6, 0, res)]

Avatar
Discard

almost, check https://www.odoo.com/documentation/9.0/reference/orm.html#openerp.models.Model.write the command you want is probably 6, not 0

Copy error! ;)

Author Best Answer

for [(0,0,res)] it throws 'list' object has no attribute 'iteritems' error

and for 

[(6,0,res)] it throws argument of type 'bool' is not iterable error

Avatar
Discard