Skip to Content
Menu
Dette spørgsmål er blevet anmeldt
2 Besvarelser
4193 Visninger

I have a pivot table and when I click an entry, it opens to the default tree view defined on the model. I have a custom tree view I want to use with this pivot table. But I do not want this custom view to replace the default view on other actions.

Avatar
Kassér
Bedste svar

There are two ways that Odoo can be instructed to look for a particular view when a User navigates to a Menu:

1. Specify the View Ref for the default view (in this case the Tree/List View from the Quotations Menu):


2. Specify the Views the Action will use (in this case specific Views from the Sales Menu):






These two Actions show data from the same sale.order model differently, depending on which Menu you select.


Note: In these screenshots it appears that both Actions leverage the same View because it has the same name, but Quotations is actually using the View with External ID sale.view_quotation_tree and Sales is using the View with External ID sale.view_order_tree




Avatar
Kassér
Forfatter Bedste svar

I found a solution. You need to override the fields_view_get method on the model. You can match using the 'pivot_view_ref' key in the context dictionary. Here is an example:


@api.model
def fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False):
view_ref = self.env.context.get('pivot_view_ref', None)
if view_ref == '<view_name>' and view_type == 'tree':
ref = self.env.ref('<model>.<view_name>')
return super().fields_view_get(view_id=ref.id, view_type=view_type, toolbar=toolbar, submenu=submenu)
else:
return super().fields_view_get(view_id=view_id, view_type=view_type, toolbar=toolbar, submenu=submenu)
Avatar
Kassér
Related Posts Besvarelser Visninger Aktivitet
3
apr. 25
4638
1
jul. 24
29
5
nov. 23
42954
3
sep. 23
9444
2
aug. 23
2033