参考方案:
1)在views中定义一个client action:
Test
myproject.test
current
2)使用一个html a元素来触发这个action:
Test
3)编写一个js widget,具体写法参考文档:https://www.odoo.com/documentation/12.0/reference/javascript_reference.html#widgets;
主要做三件事:
a)设定模板template,根据要显示tree的需求去定制;
b)定义willStart函数,使用._rpc()函数与后端通讯获得模型数据;
c)定义start()函数,使用上一步获取的数据来render画面;
完成widget之后,调用core.action_registry.add()来注册这个widget,使得点击上文的html a元素,就会显示这个widget
4)最后一步,在后端模型类添加方法,用于被js _rpc()函数调用来获取数据;