Odoo Help

0

Where are stored each line of a many2many field in the database?

By
Pascal Tremblay
on 2/8/16, 8:19 PM 1,716 views

Hello All,

For example, the model account.invoice has a many2many field payment_ids.

If I have 3 payments for an invoice, where are stored these 3 lines in the database? in which table of the database?

I know that the field definition itself is stored in ir_model_relation. But I don't find each value lines....

Thanks to help

1
Axel Mendoza
On 2/8/16, 9:05 PM

Many2many fields always have an intermediary table where it's stored the foreign keys of the two tables, the actual were the field is m2m defined and the pointed table of the m2m field. Using that table the records of the other table can be retrieved. The following is a definition of a many2many field with the intermediary table in bold

invoice_line_tax_id = fields.Many2many('account.tax',    'account_invoice_line_tax', 'invoice_line_id', 'tax_id',    string='Taxes', domain=[('parent_id', '=', False)])

In the case of the payment_ids of the model account.invoice it's a computed field so the records of the other table are retrieved using a the function _compute_payments of the account.invoice. The computed m2m fields don't have an intermediary table

Axel, if you were in my town, be sure that I would do anything I can to be your friend. I send you 1000 x thanks!

Pascal Tremblay
on 2/8/16, 9:13 PM

Nice to hear that, we don't need to be in the same town to be friends :)

Axel Mendoza
on 2/8/16, 9:16 PM

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

Register

Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)

Stats

Asked: 2/8/16, 8:19 PM
Seen: 1716 times
Last updated: 2/8/16, 9:14 PM