Python 通过odoo中的点击事件弹出现有视图窗口
我已经通过在(Python 通过odoo中的点击事件弹出现有视图窗口,python,odoo,openerp-7,odoo-8,openerp-8,Python,Odoo,Openerp 7,Odoo 8,Openerp 8,我已经通过在(hr.Recruptionform view)中使用继承在jobs中创建了一个按钮,如何在按钮单击事件完成期间打开另一个模块(“简历和信函-人力资源中的子菜单”)form_view。我的目标是,我只想在单击事件完成时打开该表单 有可能解决吗?需要帮助请您可以用这种方式返回表单 在按钮方法中,返回此词典。它将在弹出窗口中打开目标表单, def button_method(...........): return { 'name': _(some n
hr.Recruption
form view)中使用继承在jobs中创建了一个按钮
,如何在按钮单击事件完成期间打开另一个模块(“简历和信函-人力资源中的子菜单”)form_view。我的目标是,我只想在单击事件完成时打开该表单
有可能解决吗?需要帮助请您可以用这种方式返回表单
在按钮方法中,返回此词典。它将在弹出窗口中打开目标表单,
def button_method(...........):
return {
'name': _(some name),
'view_type': 'form',
"view_mode": 'form',
'res_model': model-name,
'type': 'ir.actions.act_window',
'target': 'new',
}
您可以在上述词典中传递
以打开特定记录是的,可以打开另一个窗口。你必须这样做
@api.multi
def button_method(self):
return {
'type': 'ir.actions.act_window',
'name': 'form name',
'res_model': 'object name',
'res_id': id ,
'view_type': 'form',
'view_mode': 'form',
'target' : 'new',
}
但当记录保存时,这是可能的。若你们想在保存记录之前打开向导,你们必须像这样用js编码
@api.multi
def button_method(self):
return {
'type': 'ir.actions.act_window',
'name': 'form name',
'res_model': 'object name',
'res_id': id ,
'view_type': 'form',
'view_mode': 'form',
'target' : 'new',
}
在js文件中:
openerp.module_name=函数(实例){
//打开表单的方法
on_preview_view_button: function(e){
e.preventDefault();
this.do_action({
name: _t("View name"),
type: "ir.actions.act_window",
res_model: "object",
domain : [],
views: [[false, "list"],[false, "tree"]],
target: 'new',
context: {},
view_type : 'list',
view_mode : 'list'
});
}
},
});
};
在xml
文件添加按钮中,给出id=“oe\u链接”
无论你在js
code中给出什么。在odoo中有很多屏幕,你点击一个按钮,就会显示向导/弹出窗口,试着浏览这些屏幕,并试着找出它是如何工作的。例如:客户发票屏幕,你找到一个付款按钮,它会打开一个弹出窗口。在这里,你只需要付出一点努力要搜索odoo核心代码,您将找到您的答案。很抱歉在这里询问。我如何在js上动态获取查看\u id
,以便稍后我可以将其用作do\u action
上的字典参数。我知道如何在python中执行,但不知道如何在js中执行。