|
模块开发
1.模块文件
__init__.py#表明python包,用于导入文件夹下的py文件
__openerp__.py#模块声明,包含一个字典
name:模块名称
category:模块种类
data:需要用到的xml文件
depends:需要用到的基础模块
verison:版本
2.model类
from openerp.osv import osv,fields导入model
class test_model(osv.Model):
_name:model名称唯一如"test.model",odoo创建对应test_model表
_description:model介绍
_columns:字典,数据表列在这里定义
_defaults:字典,列默认值
3.前端设计
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="view_form_test_model" model="">#model表示record类型
<field name="name">model_name</field>
<field name="model">model.name</field>#所要显示的model.name必须为之前定义的如'test.model'
<field name="arch" type="xml">
"""
表单样式定义
"""
<form string="测试" version="7.0">
<sheet>
<group>
<group>
<field name="name"/>#所要显示的列
<field name="phone"/>
</group>
<group>
<field name="address"/>
<field name="date"/>
<field name="user_id"/>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record id="view_tree_test_model" model="ir.ui.view">
<field name="name">test_model.tree</field>
<field name="model">test.model</field>
<field name="priority">1</field>
<field name="arch" type="xml">
<tree string="111">
<field name="name"/>
<field name="address"/>
<field name="phone"/>
</tree>
</field>
</record>
<record id="action_form_test_model" model="ir.actions.act_window">
<field name="name">actions.test.model</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">test.model</field>#model
<field name="view_type">form</field>#动作展示的view类型
<field name="view_mode">tree,form</field>
<field name="view_id" ref="view_form_test_model"/>#ref为iew
<field name="help" type="html">
<p class="oe_view_nocontent_create">
新建人物
</p>
</field>
</record>
<record id="action_tree_test_model" model="ir.actions.act_window">
<field name="name">actions.test.model</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">test.model</field>
<field name="view_type">tree</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="view_tree_test_model"/>
<field name="help" type="html">
<p class="oe_view_nocontent_create">
show person profile
</p>
</field>
</record>
<!--<menuitem name="会议" id="menu_three_amos_tt" action="action_amos_tt" sequence="1"/>-->
<menuitem id="menu_test_model" name="amos_test" sequence="1" action="action_form_test_model"/>
<menuitem id="menu_test_model2" name="AMOS_ROOT_MUNE" parent="menu_test_model" sequence="2"/>
<menuitem id="menu_test_model3" name="AMOS_MENU1" parent="menu_test_model2" action="action_tree_test_model"
sequence="1"/>
<menuitem id="menu_test_model4" name="AMOS_MENU2" parent="menu_test_model2" action="action_form_test_model"
sequence="2"/>
</data>
</openerp>
<record id='唯一id' model='record类型'><field name="name">name</field></record>
model:ir.ui.view,
<menuitem name='名称' id='唯一id' sequence='[number]' [parent='parentid' 无parent表示顶层菜单项] action='actionid'>
|
|