2

我在树视图中出现的创建按钮有问题。下一个或上一个按钮也不会出现在表单视图中。但是,正在从数据库中检索数据。

缺少按钮的树形窗体

我正在尝试制作的模块是人力资源模块的扩展模块,例如包含的 HR 考勤模块。扩展模块没有继承任何东西,还没有添加安全性。只有一个菜单项被添加到主模块。

我之前通过继承主 HR 模块创建的模块按预期创建了按钮。

预期结果(不同模块)

培训.py:

from openerp import fields, models, api

class ew_training(models.Model):
  _name           = 'hr.training'

  var             = fields.Char(      string='variable')

培训视图.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

4

2 回答 2

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>

它应该完美运行!我希望这对你有帮助。

于 2016-01-19T21:14:03.517 回答
0

仅供参考。

当您想要创建分层view_type tree视图时可以使用in action ,它不会让您能够创建或更新记录。Odoo 中的公司结构视图是视图类型树的示例。

并且view_type实际form操作将允许您创建具有创建、更新、复制、删除能力的普通树、表单视图。

希望这可以帮助。

于 2016-01-20T09:42:01.333 回答