Odoo10 自定义模块创建

一:配置准备

我们在odoo10源码的debian目录下找到odoo.conf文件,这就是odoo10的配置文件。我们可以拷贝它到项目根目录下进行修改,然后在pycharm中指定项目的启动配置为根目录下的odoo.conf。也可以直接修改debian目录下的odoo.conf,指定项目启动目录为这个conf文件的所在路径(不过不建议这样做,因为会覆盖掉默认配置,不方便出错后还原)

我们在odoo.conf中,修改Postgresql的主机地址、账户、密码等,并配置模块的存放路径,一般为  XXXX\odoo\addons。

实际开发时,为了避免与odoo自带模块所混淆,我们一般把自己的模块放到其他文件夹去。

所以,在addons_path后面加上我们单独存放模块的文件夹名:

[options]
; This is the password that allows database operations:
; admin_passwd = admin
db_host = 127.0.0.1
db_port = 5432
db_user = odoo
db_password = odoo
addons_path =addons,myaddons

二:新建模块

odoo-bin scaffold <module name> addons/myaddons  # 创建新模块命令

在myaddons目录下,新建一个文件夹,作为模块所在目录。

在其中,新建

__init__.py与__manifest__.py(odoo8中叫__openerp__.py)两个文件,则把该目录转变成了模块,Odoo依赖这两个文件去识别一个文件夹下是否保存一个模块。

三:修改__manifest__.py

该文件里保存了一个dict对象,对象内容是整个模块的描述,用于显示在模块的详情页。

一般信息有:(不需要全写,需要的才写,避免出现空的值造成安装报错(IOERROR:file not found))

复制代码
复制代码
{
    'name':"模块名称",
    'summary':"模块概述",
    'version':'版本',
    'category':'模块所属分类',
    'sequence':模块在应用菜单中的序号位置,
    'author':'开发者名字',
    'website':'网站',
    'depends':['依赖模块(需要用到其他模块的内容,则填写依赖模块的名字)在安装本模块时,会先安装依赖模块'],
    'data':['数据文件.xml'],
    'qweb':['视图文件.xml'],
    'demo':['默认添加的示范数据.xml'],
    'test':['测试数据.xml'],
    'installable':True,
    'application':True,
    'auto_install':False,
    'description':'''模块详细描述''',
}
复制代码
复制代码

 installabel

默认True,可设为False禁用该模块
auto_install
默认False,如果设为True,则根据其依赖模块,如果依赖模块都安装了,那么这个模块将自动安装,这种模块通常作为胶合(glue)模块。
application
默认False,如果设为True,则这个模块成为一个应用了。你的主要模块建议设置为True,这样进入Odoo后点击本地模块,然后默认的搜索过滤就是  应用 ,这样你的主模块会显示出来。
 

四:为模块添加图片

新建static目录,创建descrpition文件夹。

在其中,放入一个名为"icon"的图片文件,切记:odoo依靠文件名来识别,所以必须是icon命名。

之后,就可以在应用列表看到自己的模块了。

五:__init__.py的使用

该文件用于导入模块中需要用到的python类文件。

为了方便管理,我们一般这样做:

新建一个models文件夹,在其中存放python的实体类。models目录下新建一个__init__.py,在其中import 该目录下所有实体类。

然后在模块的__init__.py中,Import models 即可。

猜你喜欢

转载自www.cnblogs.com/soleZ/p/10076154.html
今日推荐