1. 完成培训模块的基本框架,安装模块到OpenERP系统。
2. 能够管理培训教师。教师对象包含信息:教师名称,联系电话。
模块名为east_training,然后它下面有四个文件:
|--east_training |--__init__.py |--__openerp__.py |--teacher.py |--module.xml
__init__.py文件是Python 的模块描述,因为OpenERP模块也是一个普通的Python模块。
# -*- coding: utf-8 -*- import teacher
__openerp__.py文件(在6.0之前的版本也叫__terp__.py)包含一个Python的字典声明这个模块的相关信息:
# -*- encoding: utf-8 -*- { "name" : "East Training System", #模块名称 "author" : "eastson", #作者 "version" : "0.17", #版本 "depends" : ["base"], #依赖模块 "category" : "Generic Modules/Others", #模块类型 "website": "http://www.cnblogs.com/eastson",#网址 "update_xml" : ["module.xml"], #模块更新的时候会读入的文件 "active": False, "installable": True #可否安装 }
培训教师对象定义文件,继承自osv.osv:
# -*- encoding: utf-8 -*- from osv import osv, fields class east_training_teacher(osv.osv): _name = 'east_training.teacher' _columns = { 'name': fields.char('教师名称', size=64), 'phone': fields.char('电话号码', size=32) } east_training_teacher()
模块定义文件,诸如菜单项,树形视图,表单视图等都在这里定义。可以是任意文件名,也可以分割成多个文件,对应到__openerp__.py的update_xml项:
<?xml version="1.0" encoding="utf-8"?> <openerp> <data> <menuitem name="EAST" id="menu_east_training"/> <menuitem name="设置" id="menu_east_training_settings" parent="menu_east_training"/> <!--培训/设置/教师--> <record model="ir.actions.act_window" id="action_east_training_teacher"> <field name="res_model">east_training.teacher</field> </record> <menuitem name="教师" id="menu_east_training_settings_teacher" parent="menu_east_training_settings" action="action_east_training_teacher"/> </data> </openerp>
1. 首先要保证当前界面为扩展模式,否则找不到模块管理相关的菜单。
2. 因为east_training是新增的模块,需要执行模块列表更新才能在模块列表中找到。
3. 在模块列表中找到新增的模块east_training:
4. 点击east_training,查看该模块的详细信息。确认无误后点击Install安装该模块。
5. 点击更新按钮执行模块安装:
6. 模块安装成功,新增的模块就会出现在顶层菜单:
提示:
1. 模块安装成功后,默认的在后台数据库创建了和对象类名相同的数据表,同时还创建了一些系统字段:
2. 模块卸载后,创建的数据库表不会被删除,输入的数据也会保留。再次安装时也会保留原先的数据。