odoo10学习笔记十五:仪表板

Posted 莫离莫弃iの

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了odoo10学习笔记十五:仪表板相关的知识,希望对你有一定的参考价值。

原文地址:http://www.cnblogs.com/ygj0930/p/7154094.html

仪表盘可以通过外部ID引用其他视图文件的内容,整合到一个界面进行显示。

一:建立仪表盘视图文件

views/session_board.xml:

通过外部id引入要展示的视图文件——定义仪表板form表单,把引入的视图文件进行布局显示——定义action,指定打开仪表板视图的动作——定义子菜单绑带到odoo顶级仪表板菜单下,绑定action

复制代码
<?xml version="1.0"?>
<odoo>
    <data>
       <!--引用一个模型的图形视图-->
        <record model="ir.actions.act_window" id="act_session_graph">
            <field name="name"></field>
            <field name="res_model">引用的模型</field>
            <field name="view_type">form</field>
            <field name="view_mode">graph</field>
            <field name="view_id"
                   ref="模型.被引用的视图元素的外部id"/>
        </record>
        <!--引用日历视图-->
        <record model="ir.actions.act_window" id="act_session_calendar">
            <field name="name"></field>
            <field name="res_model">模型</field>
            <field name="view_type">form</field>
            <field name="view_mode">calendar</field>
            <field name="view_id" ref="模型.视图外部id"/>
        </record>
        <!--引用模型列表/表单视图-->
        <record model="ir.actions.act_window" id="act_course_list">
            <field name="name">Courses</field>
            <field name="res_model">openacademy.course</field>
            <field name="view_type">form</field>
            <field name="view_mode">tree,form</field>
        </record>
        <!--定义仪表板form表单-->
        <record model="ir.ui.view" id="board_session_form">
            <field name="name">仪表板</field>
            <field name="model">board.board</field>
            <field name="type">form</field>
            <field name="arch" type="xml">
                <form string=" Dashboard">
                    <board style="2-1">//有好几种样式:1,1-1,2-1和1-1-1,可以在odoo里面点击切换
                        <column>//一列
                            <action
                                string="视图一"
                                name="%(上面引入的视图id)d"
                                height="150"
                                width="510"/>
                            <action
                                string="视图二"
                                name="%(上面引入的视图id)d"/>
                        </column>
                        <column>//第二列
                            <action
                                string="视图三"
                                name="%(上面引入的视图id)d"/>
                        </column>
                    </board>
                </form>
            </field>
        </record>
       <!--定义动作打开仪表板form视图-->
        <record model="ir.actions.act_window" id="open_board_session">
          <field name="name">Session Dashboard</field>
          <field name="res_model">board.board</field>
          <field name="view_type">form</field>
          <field name="view_mode">form</field>
          <field name="usage">menu</field>
          <field name="view_id" ref="board_session_form"/>
        </record>
        <!--在odoo原生仪表板菜单下,定义子菜单,把仪表板打开动作绑定到菜单项-->
        <menuitem
            name="Session Dashboard" parent="base.menu_reporting_dashboard"
            action="open_board_session"
            sequence="1"
            id="menu_board_session" icon="terp-graph"/>
    </data>
</odoo>
复制代码

 

2:修改manifest文件,添加depends以及注册视图文件:

复制代码
\'depends\': [\'base\', \'board\'],

\'data\': [
        ......
        \'views/session_board.xml\',
    ],
复制代码

以上是关于odoo10学习笔记十五:仪表板的主要内容,如果未能解决你的问题,请参考以下文章

odoo10学习笔记十六:定时任务

odoo10学习笔记十六:定时任务

odoo10学习笔记十:Actions

odoo10学习笔记十二:web controller

odoo10学习笔记十四:mixin其他功能模块

odoo10学习笔记十三:qweb报表