I have a one2many field inside form, in this field i want to group by two field so i do some search i found that in odoo we can't group by fields in tree view inside a form, so i decided to add button that return tree view of model (one2many field), but until now i con't return tree view with group by fields any advices.
my code :
def display_offers(self):
search_view_id = self.env.ref('module_name.eligibility_result_filter').id
tree_view_id = self.env.ref('module_name.eligibility_result_tree').ids
form_view_id = self.env.ref('module_name.eligibility_result_form').ids
return {
'name': _('Display offers'),
'view_mode': 'tree',
'res_model': 'model.model',
'domain': str([('id', 'in', self.one2many_field.ids)]),
'context': {'search_default_operator': 1, 'search_default_technology': 1},
'search_view_id': search_view_id,
'views': [[tree_view_id, 'tree'], [form_view_id, 'form']],
'type': 'ir.actions.act_window',
'target': 'current',
}
<record id="eligibility_result_filter" model="ir.ui.view">
<field name="name">model.model.filter</field>
<field name="model">model.model</field>
<field name="arch" type="xml">
<search string="offers">
<group expand="1" string="Group By...">
<filter name="Oper" string="Operator" domain="[]" context="{'group_by':'operator'}"/>
<filter name="tech" string="Technology" domain="[]" context="{'group_by':'technology'}"/>
</group>
</search>
</field>
</record>