odoo V10中文参考手册(五:模块、命令行odoo-bin)

Manifest

manifest文件用于将python包定义成odoo的模块,并且声明模块的元数据,文件名为__ manifest __.py并包含一个python格式的数据字典

{
    'name': "A Module",
    'version': '1.0',
    'depends': ['base'],
    'author': "Author Name",
    'category': 'Category',
    'description': """
    Description text
    """,
    # data files always loaded at installation
    'data': [
        'mymodule_view.xml',
    ],
    # data files containing optionally loaded demonstration data
    'demo': [
        'demo_data.xml',
    ],
}

可用的manifest字段:

name (str, required)

模块名称

version (str)

模块的版本号

description (str)

模块的描述

author (str)

模块作者

website (str)

模块作者的网站地址

license (str, defaults: LGPL-3)

模块遵循的发布协议,默认是LGPL-3

category (str, default: Uncategorized)

在odoo中的分类类目,官方建议使用已存在的分类,但也可以通过该字段取值实时创建,并可用斜杠来划分等级如Foo/Bar创建一个Foo的分类,再在其下创建一个bar的分类,最后会设置给该模块bar分类

depends (list(str))

声明哪些模块需要在加载本模块之间加载,因为这个模块用到了其他模块里的内容。当安装一个模块时,它所依赖的模块会自动全部安装上去。

data (list(str))

每次加载模块时都需要加载的数据文件列表,每个文件名是相对模块目录的路径

demo (list(str))

只在演示模式下才加载的数据文件

auto_install (bool, default: False)

是否自动安装,默认是False,设置为True时,只要所依赖的模块安装了该模块会自动安装。一般用于协作模块如:sale_crm 依赖于sale和crm

odoo系统已存在的分类列表:https://github.com/odoo/odoo/blob/master/odoo/addons/base/module/module_data.xml

运行

  • -d database, --database database 指定安装或更新模块时使用的数据库
  • -i modules, --init modules 以逗号分隔的需要在服务端运行之前安装的模块列表,需指定-d参数
  • -u modules, --update modules 在服务端运行之前需要更新的模块列表,以逗号分隔
  • --addons-path directories 模块储存的文件目录,以逗号分隔,运行时会扫描这些指定的目录
  • --workers count 默认0,如果设置会开启多进程并运行指定数量的worker(用于处理http和rpc请求)

下面是一系列用于限制和回收worker的选项

  • --limit-request limit 每个worker在生命周期内可处理的最多请求数,默认8196

  • --limit-memory-soft limit 每个worker允许占用的最大内存,如果内存占用超过了,在当前请求完成后会被关闭并回收,默认640M

  • --limit-memory-hard limit 硬性的内存约束,一旦超过直接关闭不等请求完成,默认768M

  • --limit-time-cpu limit 限制worker处理每个请求所占用的cpu秒数,超过则直接关闭,默认60

  • --limit-time-real limit 限制workder处理请求所使用的时间,超过直接关闭,该时间包含数据库查询等时间在内,默认120

  • --max-cron-threads count 专注于计划任务的worker数量,默认是2,在多线程下,worker是线程;在多进程下worker是进程,且这个是与http进程数分开的

  • -c config, --config config 提供一下可选的配置文件

  • -s, --save 保存服务器配置文件到当前配置文件,默认是HOME/.odoorc,当指定-c参数时是对应文件

  • --proxy-mode 开启X-Forwarded-*头

  • --test-enable 当安装模块后运行测试

  • --dev feature,feature,...,feature

参数:

  • all - 所有指定特性被激活
  • xml - 直接从xml文件读取qweb模板,一旦模板在数据库中有修改,它就不会从xml中读取了,直接下次更新模块或重初始化
  • reload - 当python文件有修改时自动重启服务(在用文本编辑器时可能没用。。。)
  • qweb - 在解析qweb模板时,如果一个节点有t-debug='debugger',暂停解析
  • (i)p(u)db 开启指定的python调试器,当碰到错误时直接返回

数据库参数

  • -r <user>, --db_user <user> 数据库用户名,用于连接postgresql数据库
  • -w <password>, --db_password <password> 当使用密码验证模式时的数据库密码
  • --db_host <hostname> 数据库的主机地址
  • --db_port <port> 数据库监听的端口,默认5432
  • --db-filter <filter> 隐藏不满足指定条件的数据库,filter参数是一个正则表达式,%h表示被请求的主机名,%d表示被请求的子域名(www.test.comtest.com都会匹配到test数据库)
  • --db-template <template> 当在数据库管理界面创建数据库时,使用指定的模板数据库,默认是template1

内置HTTP

  • --no-xmlrpc 不开启http和长连接worker,但可能还是会开启计划任务worker
  • --xmlrpc-interface <interface> HTTP服务器所监听的IP地址,默认是0.0.0.0
  • --xmlrpc-port <port> HTTP服务器所监听的端口,默认8069
  • --longpolling-port <port> 在多进程或gevent模式下长连接的端口,默认是8072,在默认多线程模式下不可用

日志

默认情况下odoo记录info级别的日志(工作流只记录warning),且日志直接输出,可以用选项来指定日志的记录方式

  • --logfile <file> 将日志输出保存到指定文件。在unix类系统中文件可以用其他的循环日志管理程序处理,当文件内容被替换时会自动重新打开
  • --logrotate 启用每天循环日志记录,保存30份备份,它的循环频率和备份数量不能修改
  • --syslog 记录到系统日志中
  • --log-db <dbname> 使用ir.logging模型(ir_logging表)记录到指定数据库中
  • --log-handler <handler-spec> LOGGER:LEVEL - 指定日志记录级别,LOGGER省略时使用默认的handler,LEVEL省略时会自动用INFO,可以重复handler来指定多个
    odoo-bin --log-handler :DEBUG --log-handler werkzeug:CRITICAL --log-handler odoo.fields:WARNING
  • --log-request 开启RPC请求的DEBUG日志,相当于--log-handler=odoo.http.rpc.request:DEBUG
  • --log-response 开启RPC输出的DEBUG日志,相当于--log-handler=odoo.http.rpc.response:DEBUG
  • --log-web 开启HTTP请求和输出的DEBUG日志,相当于--log-handler=odoo.http:DEBUG
  • --log-sql 开启数据库查询的DEBUG日志,相当于--log-handler=odoo.sql_db:DEBUG
  • --log-level <level> 设置多个logger级别的简便方式,一次将critical, error, warn, debug设置到odoo和werkzeug logger上

odoo还为多种logger提供debug模式:
1.debug_sql 将sql 记录级别设置为debug,相当于--log-sql
2.debug_rpc 将odoo和http请求设置为debug级别,相当于--log-level debug --log-request
3.debug_rpc_answer 将odoo和http请求及输出记录级别设置为debug,相当于--log-level debug --log-request --log-response

脚手架

脚手架用于创建模块的基本结构,通过odoo-bin scaffold 命令加下面的参数来执行:

  • -t <template> 模板文件夹,经过jinja2解释并复制到目标文件夹
  • name 需要创建的模块名,会根据这个名字去自动生成模块文件夹名之类的
  • destination 模块创建后所存放的文件夹,默认当前执行环境的文件夹

配置文件

大部分命令行选项可以通过一个配置文件来指定,大部分只需将选项名前的-移除,并将其他的-替换为_,如(--db-template=>db_template)
某些转换比较特别:

  • --db-filter => dbfilter
  • --no-xmlrpc => xmlrpc(boolean)
  • 预先通过--log-xxx选项设置的记录直接被添加到log_handler,可直接在配置文件中设置
  • --smtp => smtp_server
  • --database => db_name
  • --debug => debug_mode (boolean)
  • --i18n-import,--i18n-export 在配置文件中无效

默认的配置文件是$HOME/.odoorc,可用--config指定,并可用--save 来保存当前配置


译自odoo官方文档:http://www.odoo.com/documentation/10.0/reference/module.htmlhttp://www.odoo.com/documentation/10.0/reference/cmdline.html,不当之处欢迎批评指正。

内容发布自http://www.jianshu.com/u/6fdae8ec06bc,转载请注明出处

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,290评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,399评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,021评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,034评论 0 207
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,412评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,651评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,902评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,605评论 0 199
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,339评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,586评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,076评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,400评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,060评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,083评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,851评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,685评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,595评论 2 270

推荐阅读更多精彩内容