Ir al contenido
Menú
Se marcó esta pregunta

Hello,

I have 3 models.

Model_a.py:

fila = fields.one2many('model.c', 'keya')

kn_b = fields.many2one('model.b')


Model_b.py:

filb = fields.one2many('model.c', 'keyb')

reference = fields.Char('Reference')

date = fields.Date('Date')


Model_c.py:

filcb = fields.many2one('model.b')


I will create records in model b. In this model b, there is a button is there. On clicking on that button I need to copy all values (all records) of filb field to fila field of model a .

I'd tried with this code:

def accept(self):

for record in self:

            filb_values = [(0, 0, {'reference': line.reference, 'date': line.date}) for line in record.filb]

            vals = {'fila': filb_values}

self.env["model.a"].write(vals)

return True


After click a button 'Accept'. It still not show all records ( in tree view notebook of model b) in one2many tree view notebook of model a.


Please help!

Thank you!



Avatar
Descartar
Autor Mejor respuesta

Finally, I'd solved my issue. Just add the line like this:

.....

filab = self.env["model.a"].search([])

filab = filab.write(vals)

return True


And it works fine after clicking the button: 'accept'.

Avatar
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
0
feb 21
3592
1
abr 25
4003
0
ene 21
3024
3
mar 21
5328
1
mar 21
19004