Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
1 ตอบกลับ
5126 มุมมอง

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!



อวตาร
ละทิ้ง
ผู้เขียน คำตอบที่ดีที่สุด

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'.

อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
0
ก.พ. 21
3543
1
เม.ย. 25
3965
0
ม.ค. 21
3012
3
มี.ค. 21
5288
1
มี.ค. 21
18920