我需要树视图中的所有行的按钮。点击按钮后我需要获取行ID。
我正在尝试,但没有工作:
*。XML
<button name="copy_line" class="text-right" icon="fa-files-o" type="object"/>
*。PY
@api.multi
def copy_line(self):
print("Not come here!")
for r in self:
print(r.id)
object has no attribute 'copy_line'
答案 0 :(得分:0)
要在按钮上调用方法,请单击该记录。 但在这种情况下,Record未保存,因此您无法在按钮单击时调用该方法。
Alternet方式是,您可以在页脚中基于onchange或按钮创建一个新行,并添加self._cr.commit()以提交并引发ValidationError。
答案 1 :(得分:0)
您在错误的模型中定义copy_line
如果button
包含在为One2Many
字段line_ids
定义的树视图中,并且该字段引用object.line
,则应在其中创建方法copy_line
模型。
例如:
line_ids = fields.One2Many('object.line', 'ref_id', string='Lines')
class ObjectLine(models.Model):
_name = 'object.line'
@api.multi
def copy_line(self):
print("Not come here!")
for r in self:
print(r.id)