Merge lp:~openerp-dev/openobject-server/trunk-field-completion-xmo into lp:openobject-server
Status: | Needs review |
---|---|
Proposed branch: | lp:~openerp-dev/openobject-server/trunk-field-completion-xmo |
Merge into: | lp:openobject-server |
Diff against target: |
275 lines (+228/-0) 8 files modified
openerp/osv/orm.py (+49/-0) openerp/tests/addons/test_complete_field/__init__.py (+2/-0) openerp/tests/addons/test_complete_field/__openerp__.py (+13/-0) openerp/tests/addons/test_complete_field/ir.model.access.csv (+3/-0) openerp/tests/addons/test_complete_field/models.py (+25/-0) openerp/tests/addons/test_complete_field/tests/__init__.py (+9/-0) openerp/tests/addons/test_complete_field/tests/test_basic_assumptions.py (+24/-0) openerp/tests/addons/test_complete_field/tests/test_completion.py (+103/-0) |
To merge this branch: | bzr merge lp:~openerp-dev/openobject-server/trunk-field-completion-xmo |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
OpenERP Core Team | Pending | ||
Review via email: mp+198236@code.launchpad.net |
Description of the change
Currently, m2o field autocompletion in search view uses generic name_search. Because it's generic, for related models with lots of records but few linked from current model records, most completion results are completely useless (they don't match records being filtered) and may be actively harmful and confusing (name collisions/
complete_field (currently only for m2o, may or may not be extended to other field types in the future) performs a search in the current model instead, and only then dereferences (and reduplicates) the m2o field values.
The current proposal is more of a POC, as the whole implementation is done during search + read and thus fairly inefficient, it's more of a behavioral/UI test thing.
Possible improvements:
* batch search/read in order not to pull the whole database at once (yeah, the whole database)
* reimplement logic in SQL, will require extracting part of search and read/name_get, but aside from that it should be possible to do the whole thing in a single SQL query (?) with very little massaging afterwards
Unmerged revisions
- 5011. By Xavier (Open ERP)
-
[ADD] new method complete_field specifically for fetching completion of m2o fields