Python 从Odoo 8中的另一个模型调用方法

Python 从Odoo 8中的另一个模型调用方法,python,methods,code-generation,odoo-8,Python,Methods,Code Generation,Odoo 8,我正在ir_model的“x_custom_model”中创建一个自定义模型,在ir_model_字段中有自己的自定义字段“x_field_name”。 同时,我还生成了一个视图,它使用这个模型和那些字段。 在这个视图中,我生成了一个按钮,当单击该按钮时,必须在已经存在的模型中调用一个方法“my_method”“my_model_name” 我在当前使用“x_自定义_模型”时尝试访问此方法。 问题在于无法调用该方法。任何帮助或提示都将不胜感激 1) 我尝试将方法名称作为name属性的值指定为:

我正在ir_model的“x_custom_model”中创建一个自定义模型,在ir_model_字段中有自己的自定义字段“x_field_name”。 同时,我还生成了一个视图,它使用这个模型和那些字段。 在这个视图中,我生成了一个按钮,当单击该按钮时,必须在已经存在的模型中调用一个方法“my_method”“my_model_name”

我在当前使用“x_自定义_模型”时尝试访问此方法。 问题在于无法调用该方法。任何帮助或提示都将不胜感激

1) 我尝试将方法名称作为name属性的值指定为:

#Button attributes
<button name="my_method" type="object"/>

Error: x_custom_model had no attribute called "my_method"
按钮属性 错误:x_自定义_模型没有名为“my_方法”的属性 2) 通过服务器操作(调用我的方法): 设置->操作->服务器操作

  • 动作名称:调用我的方法
  • 基本模型:x_自定义_模型
  • 要执行的操作:执行Python代码
Python代码:

print "Am I getting here?"
action = {"my_model_name".my_method}

#Button attributes
<button name="Call_My_Method" type="action"/>
打印“我到了吗?”
动作={“我的模型名称”。我的方法}
#按钮属性
什么也没发生,连指纹都没有

我目前一直在讨论这个问题,似乎找不到太多有用的信息,因此我们非常感谢您的帮助。

默认情况下

<button name="my_method" type="object"/>
您不能简单地从当前按钮调用另一个对象
my_方法
。您需要在当前的
x\u custom\u model
对象中定义一个自定义方法,并让它通过创建该对象的实例来调用另一个对象方法

例如:


谢谢你的回复,我已经通过服务器操作解决了这个问题。我必须定义服务器操作的id,而不是我在示例中使用的名称“Call_My_method”。
<field name="model">x.custom.model</field>
self.pool.get('other.object').my_method(cr, uid, arg, context=context)