Use right form view in Many2One and WinSearch
The first view which is a tree must be removed from the view ids as mode of the screen is form only. issue6510 review40531002
This commit is contained in:
1 parent
656a9bb6ca
commit
71faf9f652
3 files changed
+11
-6
No files matched your search
@@ -176,10 +176,8 @@ class Many2Many(Widget):
|
||||
if add_remove:
|
||||
domain = [domain, add_remove]
|
||||
context = self.field.get_context(self.record)
|
||||
view_ids = self.attrs.get('view_ids', '').split(',')
|
||||
if view_ids:
|
||||
# Remove the first tree view as mode is form only
|
||||
view_ids.pop(0)
|
||||
# Remove the first tree view as mode is form only
|
||||
view_ids = self.attrs.get('view_ids', '').split(',')[1:]
|
||||
return Screen(self.attrs['relation'], domain=domain,
|
||||
view_ids=view_ids,
|
||||
mode=['form'], views_preload=self.attrs.get('views', {}),
|
||||
|
||||
@@ -152,8 +152,10 @@ class Many2One(Widget):
|
||||
def get_screen(self):
|
||||
domain = self.field.domain_get(self.record)
|
||||
context = self.field.get_context(self.record)
|
||||
# Remove first tree view as mode is form only
|
||||
view_ids = self.attrs.get('view_ids', '').split(',')[1:]
|
||||
return Screen(self.get_model(), domain=domain, context=context,
|
||||
mode=['form'], view_ids=self.attrs.get('view_ids', '').split(','),
|
||||
mode=['form'], view_ids=view_ids,
|
||||
views_preload=self.attrs.get('views', {}), readonly=self._readonly,
|
||||
exclude_field=self.attrs.get('relation_field'))
|
||||
|
||||
|
||||
@@ -23,6 +23,8 @@ class WinSearch(NoModal):
|
||||
views_preload = {}
|
||||
self.domain = domain or []
|
||||
self.context = context or {}
|
||||
self.view_ids = view_ids
|
||||
self.views_preload = views_preload
|
||||
self.sel_multi = sel_multi
|
||||
self.callback = callback
|
||||
self.title = title
|
||||
@@ -112,8 +114,11 @@ class WinSearch(NoModal):
|
||||
self.screen.search_filter(self.screen.screen_container.get_text())
|
||||
return
|
||||
elif response_id == gtk.RESPONSE_ACCEPT:
|
||||
# Remove first tree view as mode if form only
|
||||
view_ids = self.view_ids[1:]
|
||||
screen = Screen(self.model_name, domain=self.domain,
|
||||
context=self.context, mode=['form'])
|
||||
context=self.context, mode=['form'],
|
||||
view_ids=view_ids, views_preload=self.views_preload)
|
||||
|
||||
def callback(result):
|
||||
if result:
|
||||
|
||||
Reference in new issue
Block a user