Odoo header 按钮丢失
Odoo header buttons missing
树视图中出现的创建按钮有问题。下一个或上一个按钮也不会出现在窗体视图中。但是,正在从数据库中检索数据。
Tree form with missing buttons
我想做的模块是人力资源模块的扩展模块,比如自带的HR考勤模块。扩展模块不继承任何东西,也没有添加安全性。主模块中只添加了一个菜单项。
我之前通过继承主 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
编辑
如果您尝试在不同的操作中调用不同的视图,这应该可行。
问题不在于创建按钮,问题在于您没有在操作中调用树视图 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>
应该可以完美运行!!!希望对您有所帮助。
仅供参考。
实际操作 view_type
tree
可用于创建 分层 视图,它不会让您能够创建或更新记录。 Odoo中的公司结构视图是视图类型树的示例。
和 view_type
到 form
的实际操作将允许您创建普通树、具有创建、更新、复制、删除功能的表单视图。
希望对您有所帮助。
树视图中出现的创建按钮有问题。下一个或上一个按钮也不会出现在窗体视图中。但是,正在从数据库中检索数据。
Tree form with missing buttons
我想做的模块是人力资源模块的扩展模块,比如自带的HR考勤模块。扩展模块不继承任何东西,也没有添加安全性。主模块中只添加了一个菜单项。
我之前通过继承主 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
编辑
如果您尝试在不同的操作中调用不同的视图,这应该可行。
问题不在于创建按钮,问题在于您没有在操作中调用树视图 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>
应该可以完美运行!!!希望对您有所帮助。
仅供参考。
实际操作 view_type
tree
可用于创建 分层 视图,它不会让您能够创建或更新记录。 Odoo中的公司结构视图是视图类型树的示例。
和 view_type
到 form
的实际操作将允许您创建普通树、具有创建、更新、复制、删除功能的表单视图。
希望对您有所帮助。