Odoo 13:act_window 代码中的操作忽略 search_view

Odoo 13: act_window action in code ignores search_view

我有一个智能按钮,它可以打开具有特定 search_view 的特定视图。 我在 xml 中为带有 view_id 和 search_view_id:

的智能按钮创建了一个动作
<button class="oe_stat_button" type="action" name="%(action_expert_positions)d" icon="fa-list-ol">
  <field string="Positions" name="positions_count" widget="statinfo"/>
</button>

<record id="action_expert_positions" model="ir.actions.act_window">
  <field name="name">Positions</field>
  <field name="res_model">expert.position</field>
  <field name="type">ir.actions.act_window</field>
  <field name="view_mode">tree</field>
  <field name="view_id" ref="project_expert_position_tree"/>
  <field name="domain">[("project_id", "=", active_id)]</field>
  <field name="search_view_id" ref="project_expert_position_tree_search"/>
  <field name="context">{'default_project_id': active_id, 'search_default_project_phase_closed': 1}</field>
</record>

这个效果很好。它显示特定视图以及具有特定过滤器的搜索视图。

现在过滤器 (search_default_...) 应该根据父对象中的字段动态激活。 为此,我将智能按钮和 xml-action 更改为创建动作的函数,以便稍后添加动态:

<button class="oe_stat_button" type="object" name="get_positions" icon="fa-list-ol">
  <field string="Positions" name="positions_count" widget="statinfo"/>
</button>

def get_positions(self):
  self.ensure_one()
  return {
    'name': 'Positions',
    'res_model': 'expert.position',
    'type': 'ir.actions.act_window',
    'view_mode': 'tree',
    'view_id': self.env.ref('my_project.project_expert_position_tree').id,
    'domain': [('project_id', '=', self.id)],
    'search_view_id': self.env.ref('my_project.project_expert_position_tree_search').id,
    'context': "{'default_project_id': active_id, 'search_default_project_phase_closed': 1}"
  }

现在的观点是正确的,但是search_view不是特定的,它是默认的search_view。 我已经调试了该函数,可以确认在返回的 json.

中正确添加了搜索视图的 ID

有人可以帮我吗?

我在 github post:

中找到了解决方案

https://github.com/odoo/odoo/issues/66147

'search_view_id': (self.env.ref('my_project.project_expert_position_tree_search').id, ),

文档说“(id, name) 对,id 是要加载的特定搜索视图的数据库标识符” https://www.odoo.com/documentation/12.0/reference/actions.html#window-actions-ir-actions-act-window

谢谢!