我想自定义向导按钮以允许选择的项目,并在单击按钮后将done(Boolean)更改为True。这是示例视图和我创建的向导按钮。
这是我在查看文件中的以下代码:
<record model="ir.actions.server" id="make_it_done">
<field name="name">Make it done</field>
<field name="condition">True</field>
<field name="model_id" ref="model_todo_task"/>
<field name="type">ir.actions.server</field>
<field name="binding_model_id" ref="model_todo_task" />
<field name="code">
action = self.make_it_done()
</field>
</record>
这是我的模型文件:
from odoo import api,fields, models
from odoo.addons.base.res.res_request import referenceable_models
from odoo.exceptions import ValidationError
class TodoTask(models.Model):
def make_it_done(self):
print('Success!!')
我希望创建一个向导功能,该功能允许将所有选定的项目更新为“完成”(就像“存档”功能中的构建一样)。但是,根据我的代码,当我选择该项目并单击向导功能时,它什么都不做。
这是我收到的唯一回复(如上图所示)。然后所有复选框将变为未选中状态。
我不知道我错过了什么,但是只是不运行代码。 请帮助我解决这个问题,谢谢大家!!
答案 0 :(得分:3)
也许您可以尝试添加一个名为“州”的字段
<field name="state">code</field>
在服务器操作中,它对我有用
答案 1 :(得分:0)
您只需要将服务器操作的代码更改为:
<field name="code">records.make_it_done()</field>
records
将是所有已标记列表项的记录集。然后当然改变方法:
def make_it_done(self):
self.done = True