我在将按钮链接到我的模型中的一个函数(python)时遇到了问题。我在网上搜索了一下,但只找到了Odoo 8的一些信息,这就是我现在的代码:
我的模型中的函数(mymodule.service):
def main_val(self, context=None):
if context is None:
context = {}
[...]关联的视图:
<record model="ir.ui.view" id="view_myodule_clients_tree">
<field name="name">mymodule.clients.tree</field>
<field name="model">mymodule.service</field>
<field name="inherit_id" ref="base.view_partner_tree"/>
<field name="arch" type="xml">
<field name="display_name" position="after">
<button name="main_val" type="object" string="Bill" class="oe_highlight" />
</field>
</field>
</record>我一直有这样的错误:
Error details:
Field `function` does not exist我也不知道为什么。
你有什么想法吗?谢谢
发布于 2015-05-15 23:25:06
如果要在按钮单击时调用python函数,则必须在按钮名称属性和按钮类型类型属性中设置与对象相同的方法名称。
我会给你一个小演示,用你的一只手检查一下
def main_val(self,cr,uid,ids,context=None):
if context is None:
context = {}
# your logic will set over hear
return True您必须在xml文件中设置与按钮名称属性相同的名称属性
<button name="main_val" type="object" string="Bill" class="oe_highlight" />您可以检查方法参数并更新模块,然后单击按钮
我希望这能对你有所帮助。:)
发布于 2016-06-15 18:49:36
如果你使用的是odoo 8,你可以使用:
@api.one
def main_val(self)或
@api.multi
def main_val(self)此记录的@one execute函数仅用于记录集的@muli
https://stackoverflow.com/questions/30261459
复制相似问题