odoo/openerp/addons/test_inherit
Raphael Collet f5e5bbdae0 [FIX] expression: fix search on one2many field with inherited inverse field
Consider the following setting:
 - on model A, field F is computed, stored, and depends on field G
 - on model A, field one2many G to model B, with inverse field H
 - on model B, field many2one H is inherited (_inherits) from model C
 - on model C, field many2one H is stored

When adding records of model B, the field F must be recomputed.  In order to
determine which records to recompute, one searches model A with a domain like
[(G, 'in', ids)].  In expression.py, this is resolved with an SQL query like

    select H from B where id in {ids}

This query fails, since the field H is not stored in model B.  This happens in
general if H is not stored (it may be any computed field).  In that case, one
should instead browse records from B, and read field H through the ORM.

A test case has been added: it introduces a many2one field in a parent model,
and a one2many field using the inherited many2one on a child model.  The test
checks whether one can search on the one2many field.
2015-09-04 13:25:51 +02:00
..
tests [FIX] expression: fix search on one2many field with inherited inverse field 2015-09-04 13:25:51 +02:00
__init__.py [MERGE] new v8 api by rco 2014-07-06 17:05:41 +02:00
__openerp__.py [FIX] fields: in to_column(), returning self.column is generally not correct 2014-10-08 16:39:59 +02:00
demo_data.xml [FIX] fields: in to_column(), returning self.column is generally not correct 2014-10-08 16:39:59 +02:00
ir.model.access.csv [IMP] test_inherit: add test case, redefine Many2one field in inherited model 2014-08-22 10:01:41 +02:00
models.py [FIX] expression: fix search on one2many field with inherited inverse field 2015-09-04 13:25:51 +02:00