コンテンツへスキップ
メニュー
この質問にフラグが付けられました

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

アバター
破棄
関連投稿 返信 ビュー 活動
0
2月 21
3543
1
4月 25
3965
0
1月 21
3012
3
3月 21
5288
1
3月 21
18922