构建Odoo模块教程

构建Odoo模块教程

ID:37163699

大小:268.50 KB

页数:46页

时间:2019-05-19

构建Odoo模块教程_第1页
构建Odoo模块教程_第2页
构建Odoo模块教程_第3页
构建Odoo模块教程_第4页
构建Odoo模块教程_第5页
资源描述:

《构建Odoo模块教程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、--构建Odoo模块模块组成o业务对象业务对象声明为Python类,由Odoo自动载入.o数据文件XML或CSV文件格式,在其中声明了元数据(视图或工作流)、配置数据(模块参数)、演示数据等.oWeb控制器处理Web浏览器发来的requests.o静态web数据Web用到的图像,CSS或JavaScript文件.模块结构一个Odoo模块也是一个Python模块,存放在一个目录中,包含一个__init__.py文件,用于导入其他Python模块.from.importmymoduleodoo.py提供了一个子

2、命令scaffold可以方便地创建一个空的模块.$odoo.pyscaffold命令执行后,将会创建一个子目录并且其中包括了Odoo模块所需的一些基本文件.练习#1执行./odoo.pyscaffoldopenacademyaddons,在addons目录下创建一个名为openacademy的模块,生成的目录文件结构如下.openacademy├──__init__.py├──__openerp__.py├──controllers.py├──demo.x

3、ml├──models.py├──security│└──ir.model.access.csv└──templates.xml各文件内容请查看文件或查看原文,然后对__openerp__.py中的几种标识文本进行修改,至少需要添加'installable':True,'application':True。对象关系映射ORM层是Odoo的一个关键组件,它可以避免大部分的SQL语句编写从而提高扩展性和安全性.业务对象用派生自Model的Python类(模型)来编写,该类的_name属性定义了模型在Odoo系统

4、中的名称.fromopenerpimportmodelsclassMinimalModel(models.Model):_name='test.model'字段字段定义模型能够存储什么以及在哪里存储,字段在模型类中用属性来定义.fromopenerpimportmodels,fieldsclassLessMinimalModel(models.Model):_name='test.model2'name=fields.Char()通用属性与模型类似,字段也可以通过参数传递对其进行设定:name=field.

5、Char(required=True)字段的常用属性有:ostring(unicode,default:field’sname)字段标签名称,会显示在界面上(对用户可见)。orequired(bool,default:False)如果值为True,此字段值不能为空,设置默认值或者在创建记录时提供。ohelp(unicode,default:‘’)界面上显示提示语。oindex(bool,default:False)---如果值为True,创建表时将为此列添加索引。简单字段字段可以分为两类:简单字段和关系字段

6、.前者为原子值,直接保存在模型对应的数据库表中;后者连接到其他的记录上(可以是相同的模型也可以是不同的模型).Boolean,Date,Char这些都是简单字段.保留字段Odoo在模型中自动创建并维护一些字段,这些字段就是保留字段,这些字段数据不需要也不应该手动去修改.oid(Id)一条记录的唯一id。ocreate_date(Datetime)记录创建时间。ocreate_uid(Many2one)谁创建的记录。owrite_date(Datetime)最后修改时间。owrite_uid(Many2one

7、)谁最后修改的记录。特殊字段默认情况下,Odoo要求模型中有一个name字段,用于显示和搜索,通过设置_rec_name也可以达到这样的目的.练习#2在openacademy模块中定义一个新的模型Course,openacademy/models.py内容如下:#-*-coding:utf-8-*-fromopenerpimportmodels,fields,apiclassCourse(models.Model):_name='openacademy.course'name=fields.Char(str

8、ing="Title",required=True)description=fields.Text()数据文件Odoo是一个高度数据驱动的系统,虽然使用Python代码来定制模块行为,但很多模块数据是在其载入时setup的,并且有些模块仅仅为Odoo添加数据.通过数据文件来定义模块数据,例如可以使用XML文件中的元素定义数据,每一个元素创建或者更新数据库中的一条记录,形式如下:

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。