2 回答

TA贡献1802条经验 获得超4个赞
如果要指定要使用的视图,可以添加一个context
属性,并为支持的每种视图类型指定一个视图 ID,与操作的view_id
属性完全一样:
<field name="order_line" colspan="4" nolabel="1" context="{'form_view_ref' : 'module.view_id', 'tree_view_ref' : 'model.view_id'}"/>
如果您不指定视图,OpenERP 将按以下顺序选择一个:
它将使用字段内定义的 <form> 或 <tree> 视图(见下文)
否则,它将为此对象使用具有最高优先级的视图。
最后,它将生成默认的空视图,包含所有字段。
注意
上下文键被命名为<view_type>_view_ref
。
默认情况下,OpenERP 永远不会使用未为您的对象定义的视图。如果您有两个模型,具有相同的字段,但模型名称不同,OpenERP 永远不会将一个视图用于另一个,即使一个模型继承另一个模型。
您可以通过在操作或上下文中手动指定视图来强制执行此操作。

TA贡献1111条经验 获得超0个赞
来自https://subscription.packtpub.com/book/business_and_other/9781789618921/10/ch10lvl1sec104/adding-a-menu-item-and-window-action
您可以使用以下代码:
<act_window id="action_books2"
name="All books"
res_model="library.books"
view_mode="tree,form"
domain="[--any domain--]"
context="{'--any context--'}" />
然后为树视图定义操作,为表单视图定义另一个操作:
<record id="action_books2_tree" model="ir.actions.act_window.view">
<field name="act_window_id" ref="action_books2" />
<field name="view_id" ref="view_all_books2_tree" />
<field name="view_mode">tree</field>
<field name="sequence" eval="2"/>
</record>
<record id="action_all_books2_form" model="ir.actions.act_window.view">
<field name="act_window_id" ref="action_all_books2" />
<field name="view_id" ref="view_books2_form" />
<field name="view_mode">form</field>
<field name="sequence" eval="2"/>
</record>
添加回答
举报