如何在按菜单项或按钮时打开特定对象?如果您想要对类似配置的对象进行排序(只需要一个对象来保存数据,例如用户名和密码)就很有用。从按钮或菜单打开特定对象
我试过玩view_init
方法和active_id
上下文键,但没有运气。有人能指出我正确的方向吗?
如何在按菜单项或按钮时打开特定对象?如果您想要对类似配置的对象进行排序(只需要一个对象来保存数据,例如用户名和密码)就很有用。从按钮或菜单打开特定对象
我试过玩view_init
方法和active_id
上下文键,但没有运气。有人能指出我正确的方向吗?
我也有类似的问题,并找到了解决方法:在你ir.actions.act_window
定义(在XML) ,尝试与你想显示你的记录的ID添加res_id
领域。如果这是id计算,也许你可以使用相同字段的“eval”属性来获得它。
例如:
<field name="res_id">5</field>
或(我不知道,如果它的工作原理)
<field name="res_id" eval="your_func_getting_res_id"/>
课程第二方法,不要忘记定义功能。
它适用于我想要返回ir.actions.act_window
在由按钮调用的方法(python中定义的方法,所以我很容易得到我想要的id)。
希望它可以帮助你或别人。
首先,您必须为您的模型创建视图(树,窗体,搜索等)。然后为模型创建动作,例如
<record model="ir.actions.act_window" id="my_unique_action_id">
<field name="name">Name for the Action</field>
<field name="res_model">your_model_name</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">here_provide_your_domain_conditon_as list_of_tuples</field>
<field name="context">here_provide_your_context_as_a_dictionary</field>
</record>
然后创建一个菜单,其中action =您的操作ID。例如
<menuitem action="my_unique_action_id" id="my_unique_menu_id" parent="your parent_menu_id"/>
如果父菜单是另一个模块则提供parent=the_other_module_name.parent_menu_id
注:我已经说过unique_action_id_name和unique_menu_id_name在这个意义上,ID应该是模块中是独一无二的。相同的操作ID可以在不同的模块中使用。