2017-05-01 6 views
2

Ich habe 3 Modelle.Wie ID des Elternteils vor dem Speichern in odoo

  • Produkte
  • Events
  • Transaktionen

So haben Products eine Beziehung von One2Many mit Events und Events mit Transactions eine Beziehung von One2Many haben.

Ich muss product_id in Transactions speichern, um in der Lage zu sein, einen Filter zu erstellen, aber ich kann es nicht machen, wenn ich vorher das Elternteil product nicht speichere.

Wie kann ich das tun?

Antwort

1

Lassen Sie uns sagen, dass Transactions viele2one event_id und Events haben many2one product_id.

Sie können ein many2one product_id in Transactions mit verwandten Feld mit store=True erstellen, um Suche durchführen oder in Domänen enthalten.

in Sie Transactions Modell:

product_id = fields.Many2one(related='event_id.product_id', store=True, readonly=True) 

können Sie sogar ein one2many Feld erstellen von Produkt zu transactionsiverse_name = 'product_id'

+0

verwenden, die nicht funktionieren, wie ich sage, ich one2many Beziehung in dieser Form haben: Produkte> Ereignisse> Transaktionen und Transaktion müssen die übergeordnete product_id speichern. – mijailr

+0

Wenn Sie one2many von eventes zur Transaktion haben, bedeutet das, dass Sie m2o von Transaktion zu Ereignissen – Cherif

+0

ohhhh Entschuldigung meinen Fehler sollten Sie verwandte = 'event_id.product_id' – Cherif

Verwandte Themen