`
xiaolin0199
  • 浏览: 573090 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

OpenERP 视图 & XML基础

 
阅读更多

模块中有多种用途的XML文件,但所有XML文件的语法结构都是一样的

<?xml version="1.0"?>
<openerp>
<data noupdate="1">
...
</data>
</openerp>
• noupdate=“1” 表示,模块升级时候不更新本文件数据。

    module_name_data.xml
    module_name_view.xml
    module_name_wizard.xml
    module_name_workflow.xml
    module_name_report.xml
    module_name_demo.xml

 

什么是视图(View)

写道
Object用于存储业务数据,View用于向用户展现数据以及
输入数据。View的构成包括field,seprator,group,button等用
户界面设计元素。

 
视图的类型

写道
•列表(Tree View) - List
<record model="ir.ui.view" id="openacademy_training_tree">
    <field name="name">openacademy.training</field>
    <field name="model">openacademy.training</field>
    <field name="type">tree</field>
    <field name="arch" type="xml">
        <tree string="Trainings">
            <field name="name" />
            <field name="date_start" />
        </tree>
    </field>
</record>
 注:V6.x 中 增加了 color, toolbar 两个属性,例:
<tree colors="blue:usage=='view';darkred:usage=='internal'">
    <field name="usage"/>
    ...
</tree>
Editable实现记录的列表原地编辑
    <tree string="Trainings" editable="bottom">
可选值:
•bottom: 新记录在列表的最后插入
•top: 新记录在列表的最上面插入
•列表(Tree View) - Tree
• 层次结构的树形视图 (parent_id, child_ids)

<record model="ir.ui.view" id="openacademy_category_tree">
    <field name="name">openacademy.category.tree</field>
    <field name="model">openacademy.category</field>
    <field name="field_parent">child_ids</field>
    <field name="type">tree</field>
    <field name="arch" type="xml">
        <tree string="Categories">
            <field name="name" />
        </tree>
    </field>
</record>
 

 
• 用于Action中的列表视图

<record model="ir.actions.act_window" id="openacademy_category_tree_act">
    <field name="name">All Categories</field>
    <field name="res_model">openacademy.category</field>
    <field name="view_type">tree</field>
    <field name="view_mode">tree,form</field>
    <field name="domain">[('parent_id', '=', False)]</field>
</record>

• 此例的Domain 过滤出所有一级目录(没有父亲)。
 
下例实现“展开按钮”显示子目录。

<record model="ir.actions.act_window" id="cursus_by_category_act">
    <field name="res_model">openacademy.cursus</field>
    <field name="view_type">form</field>
    <field name="view_mode">tree,form</field>
    <field name="domain">[('category_id', 'child_of', [active_id])]</field>
</record>

<record model="ir.values" id="ir_action_cursus_by_category">
    <field name="key2" eval="'tree_but_open'" />
    <field name="model" eval="'openacademy.category'" />
    <field name="name">Cursus</field>
    <field name="value" eval="'ir.actions.act_window,%d'%cursus_by_category_act" />
    <field name="object" eval="True" />
</record>
 
•表单(Form View)
<record model="ir.ui.view" id="openacademy_training_form">
    <field name="name">openacademy.training</field>
    <field name="model">openacademy.training</field> 
    <field name="type">form</field>
    <field name="arch" type="xml">
        <form string="Training">
            <field name="name" select="1" />
           <field name="date_start" select="1" />
        </form>
    </field>
</record>
 
•查询栏(Search View)
•日历(Calendar View)
<record model="ir.ui.view" id="openacademy_training_calendar">
    <field name="name">openacademy.training.calendar</field>
    <field name="model">openacademy.training</field>
    <field name="type">calendar</field>
    <field name="arch" type="xml">
        <calendar string="Training" date_start="date_start" date_stop="date_stop">
            <field name="name" />
        </calendar>
    </field>
</record>

•date_start 开始日期
•date_stop 结束日期 (可选)
 
•框图(Diagram View)
•图形(Graph View)
<record model="ir.ui.view" id="view_id">
    <field name="name">view_name</field>
    <field name="model">object_name</field>
    <field name="type">graph</field>
    <field name="arch" type="xml">
        <graph string=“Graph Title” type="pie">
            <field name="first_field"/>
            <field name="second_field" operator="+" />
        </graph>
    </field>
</record>

• graph 的 type属性可选值:
•pie 饼图
•bar 柱状图
 
•甘特图(Gantt View)

 

File Description

<?xml version="1.0" encoding="UTF-8" ?>
<openerp>
<data>
    <!-- views -->
    <record model="ir.ui.view" id="openacademy_training_form">
    ...
    </record>
    <!-- actions -->
    <record model="ir.actions.act_window" id="openacademy_training_act">
    ...
    </record>
<!-- menuitem -->
    <menuitem name="Tools" id="openacademy_training_mi"
action="openacademy_training_act" />
<!-- 快捷键 V6.0新加的 -->
    <shortcut name="Draft Purchase Order (Proposals)" model="purchase.order"
logins="demo" menu="m" />
</data>
</openerp>

 

  • 大小: 20.1 KB
分享到:
评论

相关推荐

    openerp.zip_openERP

    总的来说,OpenERP的基础开发涉及多个方面,从环境搭建、模块创建、数据模型设计到视图布局、功能实现,都需要开发者具备一定的Python和数据库知识。随着对OpenERP框架的深入理解,开发者能够构建出更复杂、更符合...

    OpenERP.rar_openERP

    OpenERP的模型-视图-控制器(MVC)架构是其设计的基础。模型处理数据和业务逻辑,视图负责用户界面展示,控制器则作为两者之间的桥梁。这种架构使得代码组织清晰,易于维护。 数据库管理是OpenERP的一个重要部分,...

    openerp部署训练文档

    以上就是Openerp部署训练文档的主要内容,涵盖了OpenERP的安装、模块构建、视图构建、对象间关系、继承、域和功能字段、高级视图、基于组的访问控制机制、向导对象、工作流、安全性、国际化、报告、仪表板、网络服务...

    openerp 培训班 模块代码

    总结,OpenERP(Odoo)模块开发涵盖了多种技术,从后端Python模型和SQL约束到前端XML视图和静态资源。熟练掌握这些技术将使您能够为企业的业务需求定制个性化的解决方案。通过持续学习和实践,您可以成为OpenERP...

    OpenERP 文档

    ### OpenERP Web 参考文档知识点详解 ...从基础知识到高级主题,从 JavaScript 技术栈到视图设计,OpenERP Web 都提供了详尽的指南和支持。开发者可以根据自己的需求选择合适的技术栈来构建高质量的应用程序。

    OpenERP_Technical开发教程

    OpenERP提供了完整的工具箱,包括集成的对象关系映射(ORM)支持、模板驱动的模型视图控制器(MVC)接口、报表生成系统、自动化国际化等特性。 #### Python与RAD框架 Python是一种高级动态编程语言,非常适合快速...

    openerp开发环境

    - 使用`openerp/models.py`定义模型,`openerp/views.xml`设计视图,`openerp/static`存放前端资源,`openerp/security.xml`定义安全规则,`openerp/wizard.py`创建向导等。 9. **调试与测试** 开发过程中,利用...

    openerp7.0用户手册及开发手册

    1. **系统安装与配置**:介绍了安装OpenERP服务器和客户端的步骤,以及如何进行基础设置,如数据库创建、用户权限分配等。 2. **模块管理**:解释了如何安装、升级和卸载模块,以及如何自定义模块以满足特定业务...

    QWeb开发文档

    这一点与OpenERP的视图继承机制非常相似,因为OpenERP视图也采用了XML树结构。这种特性在处理具有继承和扩展需求的复杂视图时非常有用,为开发者提供了高度的灵活性和控制能力。 QWeb的基本功能可以通过一个示例来...

    odoo:在 openerp 7.0 和 satll 8.0 中,即使相关菜单对您不可用,您也可以通过操作 URL 访问任何视图。 这个插件是我解决这个问题的方法。

    动作安全在 openerp 7.0 和 satll 8.0 中,即使相关菜单对您不可用,您也可以通过操作 URL 访问任何视图。 这个插件是我解决这个问题的方法。 此模块限制用户只能执行她可以从用户界面访问的操作。 此模块检查在操作...

    Odoo的网页模块QWEB简述.doc

    在 OpenERP 中,QWEB 模板是通过 XML 文件来定义的,例如 oepetstore/static/xml/petstore.xml。 JavaScript 文件 JavaScript 文件是 OpenERP 中的一个重要组件,负责处理网页的逻辑和交互。JavaScript 文件可以是...

    Odoo_10_Development_Essentials

    Odoo的模块包含了一系列的配置文件,如__manifest__.py文件,该文件描述模块的属性,包括名称、版本、依赖关系等,以及XML文件来定义模型和视图。了解如何创建和管理Odoo模块是构建自定义应用的基础。 知识点五:...

    ODOO10菜单和界面

    ODOO10是Odoo(原OpenERP)的一个版本,它是一款开源的企业资源规划(ERP)软件,包含了业务应用程序的广泛范围,比如销售、CRM、库存管理、生产、会计等。ODOO10的菜单和界面是用户与软件进行交互的前端部分,对...

    odoo11 企业版源码

    然后,通过阅读模型定义理解数据模型设计,深入理解XML视图以构建用户界面,并探索控制器实现业务逻辑。同时,了解Odoo的API和模块化结构对于开发自定义模块至关重要。 **7. Odoo企业版特性** 相较于社区版,Odoo...

    openerp-mrp-routing-location:定义Craft.io路线的原料库位和产品库位

    3. **Python编程**:Python是Odoo的主要开发语言,用于编写后台逻辑、自定义字段、视图、模型等。理解Python基础语法和Odoo的API接口对于使用或开发此类扩展至关重要。 4. **路由和工作中心**:在MRP中,路由定义了...

    odoo15 企业版源码

    视图可以通过XML文件进行定义,并可自定义样式和布局。 4. **控制器(Controller)**:控制器处理HTTP请求,对接收到的数据进行处理,并返回响应。它们是Odoo Web服务端的主要部分。 5. **数据库操作**:Odoo使用...

    ODOO12图书项目视图层.mp4

    视图层为用户界面的描述,视图用 XML 定义,由网页客户端框架生成数据感知的 HTML 视图。可用菜单项开启渲染视图的操作。比如,Users 菜单项处理一个同样名为 Users 的操作,然后渲染一系列视图。有多种可用视图类型...

    odoo11源码

    2. **视图(View)**:视图定义了用户界面的布局和样式,可以是XML定义的表单、树形、列表或kanban视图。 3. **动作(Action)**:动作是连接模型和视图的桥梁,用于定义用户界面的行为,如打开新窗口、执行搜索等。...

    Odoo90模块开发全流程.docx

    这些文件可以是XML或CSV格式,用于声明视图、工作流等。 3. **Web控制器**:用于处理来自Web浏览器的请求。这些控制器通常是Python类,它们继承自`openerp.http.Controller`,用于定义HTTP路由和处理函数。 4. **...

    构建Odoo模块教程.docx

    - **XML或CSV文件**:用于声明元数据,如视图、工作流、配置数据和演示数据。 - **Web资源**:包括图像、CSS和JavaScript文件,用于构建用户界面。 2. **模块结构** - Odoo模块是一个Python模块,包含在一个目录...

Global site tag (gtag.js) - Google Analytics