Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
2 Відповіді
4274 Переглядів

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.

Аватар
Відмінити
Найкраща відповідь

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




Аватар
Відмінити
Автор Найкраща відповідь

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)
Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
3
квіт. 25
4848
1
лип. 24
29
5
лист. 23
43206
3
вер. 23
9576
2
серп. 23
2178