Hello,
My code was working on v7 but when I move it to v8 I am getting an "is not JSON serializable" error
All I want to do is populate a Many2One field when another field in the view changes.
Here is the code which is giving me the error:
amenity = fields.Many2one('sim.amenities','Payments Cols',required=True,ondelete='cascade')
@api.onchange('building')
def modify_amenities(self):
res = {'value':{'amenities':False}}
ret_ids = []
if self.building:
ret_ids = self.env['sim.amenities'].search([['cols', '=', self.building.id],])
ret_lines = []
for amen_id in ret_ids:
ret_sub_list = []
ret_sub_list.append(0)
ret_sub_list.append(False)
ret_lines_dict = {}
amenity_obj = self.env['sim.amenities'].browse(amen_id.id)
print amenity_obj
ret_lines_dict.update({'name':amenity_obj.name})
ret_sub_list.append(ret_lines_dict)
ret_lines.append(ret_sub_list)
res = {'value':{'amenity':ret_lines}}
self.amenity = res
Any idea why I might be getting the error or in any case how can I populate the field amenity when the field building changes?
Any tip will be really appreciated! Thanks a lot
in v8. you can directly write value inside the current record using self. you don't need to assign dictionary.