我在树状视图中出现了创建按钮的问题。下一个或上一个按钮也不会出现在表单视图中。但是,正在从数据库中检索数据。
Tree form with missing buttons
我试图制作的模块是人力资源模块的扩展模块,就像所包含的人力资源考勤模块一样。扩展模块不会继承任何内容,并且尚未添加安全性。只有一个菜单项添加到主模块。
我之前通过继承主HR模块创建的模块按预期创建了按钮。
Expected outcome(different module)
training.py:
from openerp import fields, models, api
class ew_training(models.Model):
_name = 'hr.training'
var = fields.Char( string='variable')
training_view.xml:
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<!-- Main Submenu -->
<menuitem id="menu_training_tree" action="action_view_training"
parent="hr.menu_hr_main" sequence="6"/>
<record id="action_view_training" model="ir.actions.act_window">
<field name="name">Training</field>
<field name="res_model">hr.training</field>
<field name="view_type">tree</field>
<field name="view_mode">tree,form</field>
</record>
<record id="view_training_tree" model="ir.ui.view">
<field name="name">hr.training.tree</field>
<field name="model">hr.training</field>
<field name="arch" type="xml">
<tree>
<field name="var"/>
</tree>
</field>
</record>
<record id="view_training_form" model="ir.ui.view">
...
</record>
</data>
</openerp>
请尝试避免使用旧API
答案 0 :(得分:1)
修改强>
如果您尝试在不同的操作中调用不同的视图,这应该可行。
问题不在于按钮创建,问题是您没有在操作action_view_training
上调用树视图,请尝试在view_mode
之后添加此行:
<field name="view_id" ref="view_training_tree"/>
修改强>
要解决您的情况,您只需更改view_type
,就应该使用form
:
<record id="action_view_training" model="ir.actions.act_window">
<field name="name">Training</field>
<field name="res_model">hr.training</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
它应该是完美的工作!我希望这对你有所帮助。
答案 1 :(得分:0)
仅供参考。
当您想要创建分层视图时,可以使用操作view_type
tree
,它不会让您能够创建或更新记录。 Odoo中公司结构的视图是视图类型树的例子。
和view_type
到form
的操作将允许您创建普通树,表单视图,具有创建,更新,复制,删除功能。
希望这有帮助。