odoo8.0(原openERP)学习笔记之一——odoo自定义模块安装

来源:互联网 发布:webp转换软件 编辑:程序博客网 时间:2024/05/01 14:15

近段时间,由于工作的需要,接触到了openERP(现在改名为odoo,所以下面我都会用odoo这个名字)。

由于要用这个进行开发,前期开始的时候,各种去网上找学习资源,可是发现大部分都是openERP 7.0 的,导致自己开发odoo8.0的时候困难重重,因此我把自己的一些经验和过程写下来,希望能对后来者有帮助。

首先是odoo的安装,这个网上有很多教程,我也是照着别人的教程安装的。所以我就不赘述了(windows下有专门的exe程序,一直点下一步就好了)。仅为大家奉上下载链接:https://www.odoo.com/page/download。

那么接下来讲述安装和开发自定义模块的过程(在视图环境下开发的例子和教程也有不少,所以下面只是讲述源码自定义模块)。

创建模块有两种方式,

1.在OE的server/openerp/addons目录下保存我们的模块;

   2.创建一个独立的目录保存我们的模块, 这种方式的有点是能够将OE标准模块与我们的模块分开。  

   对于第二种方法,需要修改OE的配置文件(即odoo的安装目录/server下的openerp-server.conf文件),找到后用记事本打开,在addons_path=‘你的安装目录’的后面加上你创建模块的路径。(注意路径之间要用逗号隔开,然后重启下服务器。)

   本例中,我们在oddons目录下创建一个silkworm文件夹(文件夹的名称可以随意),然后在其里面,分别创建_init.py,_openerp_.py,silkworm.py,silkworm_view.xml文件。

   _init_.py文件的目的是指定该模块中想要包含的python文件,也就是系统在启动的时候需要载入的python文件。该文件中仅仅包含几句简单的import语句,例如:

    import silkworm
_openerp_.py文件是OE模块的清单文件, 向OE框架说明该模块的一些属性。这个文件有时也被称为模块描述文件, 用Python中的字典(dictionary)描述。

  • name: 显示在OpenERP模块列表中;
  • version: 模块版本号;
  • description: 安装模块时显示;
  • author: 作者;
  • depends: 前面几项(name, version等)是用于文档的说明性的元素, depends告诉框架这个模块是建构在哪些其他模块基础上的. 至少要依赖于base, 本例中因为扩展了sales order系统, 所以也要依赖于sale模块;
  • data: 指定模块的xml视图文件. 如果希望改变OE的forms或UI, 创建一个视图文件. 其他类型的数据文件也可以在这里指定, 例如包含初始化数据或访问权限的数据. 本例中只有一个文件silkworm_view.xml文件;
  • demo: OE提供了一种方便的方式来包含定制模块的说明数据, 本例中留空, 但是如果希望在模块安装时可以添加一些说明数据, 用这项指定;
  • installable: 使用此项可以临时禁止一个模块的安装;
  • auto_install: 如果此项为True, OE将会在该模块的所有依赖项安装好之后自动安装这个模块, 大部分情况下不会指定自动安装.
    silkworm.py是模块的主要功能实现文件,功能包括创建类,添加字段等。

    silkworm_view.xml是视图文件,需要用<openerp><data>......</data></openerp>标记包裹。

    以上文件都创建完成后,最主要的一点(我看过了很多文章,其中都没有提到,应该是odoo8.0和7.0这方面有区别,而一般都是在讲7.0的)。

    为了要让系统识别出新的模块,我们需要打开用户的技术特性选项,具体在左侧栏目->用户->administrator,将技术特性勾选上,刷新。然后左侧栏目->模块下面就会多出更新模块列表选项,点击,再点击更新,就可以让系统识别出我们自定义的模块。最后在模块这一选项下,清除掉“应用”这个过滤器(因为这个过滤器会导致列表中只显示系统预定义的模块),最后根据关键字(即你的模块名)就可以搜索到你的模块,执行安装即可。

    silkworm模块的作用仅仅是在报价单中添加了data required和Rush Order两个字段。该模块的完整下载地址是:http://download.csdn.net/detail/backspace780/8138953。


0 0
原创粉丝点击