Merge lp:~openerp-dev/openobject-server/6.0-bug-766944-dont-inherit-x-fields-vmt into lp:openobject-server/6.0

Proposed by Vo Minh Thu
Status: Merged
Merged at revision: 3433
Proposed branch: lp:~openerp-dev/openobject-server/6.0-bug-766944-dont-inherit-x-fields-vmt
Merge into: lp:openobject-server/6.0
Diff against target: 66 lines (+19/-1)
3 files modified
bin/osv/fields.py (+8/-1)
bin/osv/orm.py (+1/-0)
bin/osv/osv.py (+10/-0)
To merge this branch: bzr merge lp:~openerp-dev/openobject-server/6.0-bug-766944-dont-inherit-x-fields-vmt
Reviewer Review Type Date Requested Status
OpenERP Core Team Pending
Review via email: mp+62296@code.launchpad.net

Description of the change

To post a comment you must log in.
3434. By Vo Minh Thu

[FIX] typos.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'bin/osv/fields.py'
2--- bin/osv/fields.py 2011-02-01 13:07:21 +0000
3+++ bin/osv/fields.py 2011-05-25 15:01:39 +0000
4@@ -63,7 +63,13 @@
5 _symbol_set = (_symbol_c, _symbol_f)
6 _symbol_get = None
7
8- def __init__(self, string='unknown', required=False, readonly=False, domain=None, context=None, states=None, priority=0, change_default=False, size=None, ondelete="set null", translate=False, select=False, **args):
9+ def __init__(self, string='unknown', required=False, readonly=False, domain=None, context=None, states=None, priority=0, change_default=False, size=None, ondelete="set null", translate=False, select=False, manual=False, **args):
10+ """
11+
12+ The 'manual' keyword argument specifies if the field is a custom one.
13+ It corresponds to the 'state' column in ir_model_fields.
14+
15+ """
16 if domain is None:
17 domain = []
18 if context is None:
19@@ -84,6 +90,7 @@
20 self.read = False
21 self.view_load = 0
22 self.select = select
23+ self.manual = manual
24 self.selectable = True
25 self.group_operator = args.get('group_operator', False)
26 for a in args:
27
28=== modified file 'bin/osv/orm.py'
29--- bin/osv/orm.py 2011-04-11 10:08:47 +0000
30+++ bin/osv/orm.py 2011-05-25 15:01:39 +0000
31@@ -2826,6 +2826,7 @@
32 'size': field['size'],
33 'ondelete': field['on_delete'],
34 'translate': (field['translate']),
35+ 'manual': True,
36 #'select': int(field['select_level'])
37 }
38
39
40=== modified file 'bin/osv/osv.py'
41--- bin/osv/osv.py 2011-01-17 09:47:50 +0000
42+++ bin/osv/osv.py 2011-05-25 15:01:39 +0000
43@@ -298,6 +298,11 @@
44 nattr = {}
45 for s in ('_columns', '_defaults'):
46 new = copy.copy(getattr(pool.get(parent_name), s))
47+ if s == '_columns':
48+ # Don't _inherit custom fields.
49+ for c in new.keys():
50+ if new[c].manual:
51+ del new[c]
52 if hasattr(new, 'update'):
53 new.update(cls.__dict__.get(s, {}))
54 else:
55@@ -332,6 +337,11 @@
56 nattr = {}
57 for s in ('_columns', '_defaults', '_inherits', '_constraints', '_sql_constraints'):
58 new = copy.copy(getattr(pool.get(parent_name), s))
59+ if s == '_columns':
60+ # Don't _inherit custom fields.
61+ for c in new.keys():
62+ if new[c].manual:
63+ del new[c]
64 if hasattr(new, 'update'):
65 new.update(cls.__dict__.get(s, {}))
66 else: