odoo V10中文參考手冊(cè)(五:模塊、命令行odoo-bin)

Manifest

manifest文件用于將python包定義成odoo的模塊寞忿,并且聲明模塊的元數(shù)據(jù)驰唬,文件名為__ manifest __.py并包含一個(gè)python格式的數(shù)據(jù)字典

{
    '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)

模塊的版本號(hào)

description (str)

模塊的描述

author (str)

模塊作者

website (str)

模塊作者的網(wǎng)站地址

license (str, defaults: LGPL-3)

模塊遵循的發(fā)布協(xié)議,默認(rèn)是LGPL-3

category (str, default: Uncategorized)

在odoo中的分類類目腔彰,官方建議使用已存在的分類叫编,但也可以通過該字段取值實(shí)時(shí)創(chuàng)建,并可用斜杠來劃分等級(jí)如Foo/Bar創(chuàng)建一個(gè)Foo的分類霹抛,再在其下創(chuàng)建一個(gè)bar的分類搓逾,最后會(huì)設(shè)置給該模塊bar分類

depends (list(str))

聲明哪些模塊需要在加載本模塊之間加載,因?yàn)檫@個(gè)模塊用到了其他模塊里的內(nèi)容杯拐。當(dāng)安裝一個(gè)模塊時(shí)霞篡,它所依賴的模塊會(huì)自動(dòng)全部安裝上去世蔗。

data (list(str))

每次加載模塊時(shí)都需要加載的數(shù)據(jù)文件列表,每個(gè)文件名是相對(duì)模塊目錄的路徑

demo (list(str))

只在演示模式下才加載的數(shù)據(jù)文件

auto_install (bool, default: False)

是否自動(dòng)安裝,默認(rèn)是False,設(shè)置為True時(shí)恋拍,只要所依賴的模塊安裝了該模塊會(huì)自動(dòng)安裝陆馁。一般用于協(xié)作模塊如:sale_crm 依賴于sale和crm

odoo系統(tǒng)已存在的分類列表:https://github.com/odoo/odoo/blob/master/odoo/addons/base/module/module_data.xml

運(yùn)行

  • -d database, --database database 指定安裝或更新模塊時(shí)使用的數(shù)據(jù)庫
  • -i modules, --init modules 以逗號(hào)分隔的需要在服務(wù)端運(yùn)行之前安裝的模塊列表,需指定-d參數(shù)
  • -u modules, --update modules 在服務(wù)端運(yùn)行之前需要更新的模塊列表薄嫡,以逗號(hào)分隔
  • --addons-path directories 模塊儲(chǔ)存的文件目錄,以逗號(hào)分隔,運(yùn)行時(shí)會(huì)掃描這些指定的目錄
  • --workers count 默認(rèn)0而昨,如果設(shè)置會(huì)開啟多進(jìn)程并運(yùn)行指定數(shù)量的worker(用于處理http和rpc請(qǐng)求)

下面是一系列用于限制和回收worker的選項(xiàng)

  • --limit-request limit 每個(gè)worker在生命周期內(nèi)可處理的最多請(qǐng)求數(shù),默認(rèn)8196

  • --limit-memory-soft limit 每個(gè)worker允許占用的最大內(nèi)存找田,如果內(nèi)存占用超過了歌憨,在當(dāng)前請(qǐng)求完成后會(huì)被關(guān)閉并回收,默認(rèn)640M

  • --limit-memory-hard limit 硬性的內(nèi)存約束墩衙,一旦超過直接關(guān)閉不等請(qǐng)求完成务嫡,默認(rèn)768M

  • --limit-time-cpu limit 限制worker處理每個(gè)請(qǐng)求所占用的cpu秒數(shù),超過則直接關(guān)閉漆改,默認(rèn)60

  • --limit-time-real limit 限制workder處理請(qǐng)求所使用的時(shí)間心铃,超過直接關(guān)閉,該時(shí)間包含數(shù)據(jù)庫查詢等時(shí)間在內(nèi)挫剑,默認(rèn)120

  • --max-cron-threads count 專注于計(jì)劃任務(wù)的worker數(shù)量去扣,默認(rèn)是2,在多線程下樊破,worker是線程愉棱;在多進(jìn)程下worker是進(jìn)程,且這個(gè)是與http進(jìn)程數(shù)分開的

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

  • -s, --save 保存服務(wù)器配置文件到當(dāng)前配置文件哲戚,默認(rèn)是HOME/.odoorc,當(dāng)指定-c參數(shù)時(shí)是對(duì)應(yīng)文件

  • --proxy-mode 開啟X-Forwarded-*頭

  • --test-enable 當(dāng)安裝模塊后運(yùn)行測(cè)試

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

參數(shù):

  • all - 所有指定特性被激活
  • xml - 直接從xml文件讀取qweb模板奔滑,一旦模板在數(shù)據(jù)庫中有修改,它就不會(huì)從xml中讀取了顺少,直接下次更新模塊或重初始化
  • reload - 當(dāng)python文件有修改時(shí)自動(dòng)重啟服務(wù)(在用文本編輯器時(shí)可能沒用朋其。。祈纯。)
  • qweb - 在解析qweb模板時(shí)令宿,如果一個(gè)節(jié)點(diǎn)有t-debug='debugger',暫停解析
  • (i)p(u)db 開啟指定的python調(diào)試器腕窥,當(dāng)碰到錯(cuò)誤時(shí)直接返回

數(shù)據(jù)庫參數(shù)

  • -r <user>, --db_user <user> 數(shù)據(jù)庫用戶名粒没,用于連接postgresql數(shù)據(jù)庫
  • -w <password>, --db_password <password> 當(dāng)使用密碼驗(yàn)證模式時(shí)的數(shù)據(jù)庫密碼
  • --db_host <hostname> 數(shù)據(jù)庫的主機(jī)地址
  • --db_port <port> 數(shù)據(jù)庫監(jiān)聽的端口,默認(rèn)5432
  • --db-filter <filter> 隱藏不滿足指定條件的數(shù)據(jù)庫簇爆,filter參數(shù)是一個(gè)正則表達(dá)式癞松,%h表示被請(qǐng)求的主機(jī)名爽撒,%d表示被請(qǐng)求的子域名(www.test.comtest.com都會(huì)匹配到test數(shù)據(jù)庫)
  • --db-template <template> 當(dāng)在數(shù)據(jù)庫管理界面創(chuàng)建數(shù)據(jù)庫時(shí),使用指定的模板數(shù)據(jù)庫响蓉,默認(rèn)是template1

內(nèi)置HTTP

  • --no-xmlrpc 不開啟http和長(zhǎng)連接worker硕勿,但可能還是會(huì)開啟計(jì)劃任務(wù)worker
  • --xmlrpc-interface <interface> HTTP服務(wù)器所監(jiān)聽的IP地址,默認(rèn)是0.0.0.0
  • --xmlrpc-port <port> HTTP服務(wù)器所監(jiān)聽的端口枫甲,默認(rèn)8069
  • --longpolling-port <port> 在多進(jìn)程或gevent模式下長(zhǎng)連接的端口源武,默認(rèn)是8072,在默認(rèn)多線程模式下不可用

日志

默認(rèn)情況下odoo記錄info級(jí)別的日志(工作流只記錄warning)想幻,且日志直接輸出粱栖,可以用選項(xiàng)來指定日志的記錄方式

  • --logfile <file> 將日志輸出保存到指定文件。在unix類系統(tǒng)中文件可以用其他的循環(huán)日志管理程序處理脏毯,當(dāng)文件內(nèi)容被替換時(shí)會(huì)自動(dòng)重新打開
  • --logrotate 啟用每天循環(huán)日志記錄闹究,保存30份備份,它的循環(huán)頻率和備份數(shù)量不能修改
  • --syslog 記錄到系統(tǒng)日志中
  • --log-db <dbname> 使用ir.logging模型(ir_logging表)記錄到指定數(shù)據(jù)庫中
  • --log-handler <handler-spec> LOGGER:LEVEL - 指定日志記錄級(jí)別食店,LOGGER省略時(shí)使用默認(rèn)的handler渣淤,LEVEL省略時(shí)會(huì)自動(dòng)用INFO,可以重復(fù)handler來指定多個(gè)
    odoo-bin --log-handler :DEBUG --log-handler werkzeug:CRITICAL --log-handler odoo.fields:WARNING
  • --log-request 開啟RPC請(qǐng)求的DEBUG日志,相當(dāng)于--log-handler=odoo.http.rpc.request:DEBUG
  • --log-response 開啟RPC輸出的DEBUG日志吉嫩,相當(dāng)于--log-handler=odoo.http.rpc.response:DEBUG
  • --log-web 開啟HTTP請(qǐng)求和輸出的DEBUG日志价认,相當(dāng)于--log-handler=odoo.http:DEBUG
  • --log-sql 開啟數(shù)據(jù)庫查詢的DEBUG日志,相當(dāng)于--log-handler=odoo.sql_db:DEBUG
  • --log-level <level> 設(shè)置多個(gè)logger級(jí)別的簡(jiǎn)便方式率挣,一次將critical, error, warn, debug設(shè)置到odoo和werkzeug logger上

odoo還為多種logger提供debug模式:
1.debug_sql 將sql 記錄級(jí)別設(shè)置為debug刻伊,相當(dāng)于--log-sql
2.debug_rpc 將odoo和http請(qǐng)求設(shè)置為debug級(jí)別露戒,相當(dāng)于--log-level debug --log-request
3.debug_rpc_answer 將odoo和http請(qǐng)求及輸出記錄級(jí)別設(shè)置為debug椒功,相當(dāng)于--log-level debug --log-request --log-response

腳手架

腳手架用于創(chuàng)建模塊的基本結(jié)構(gòu),通過odoo-bin scaffold 命令加下面的參數(shù)來執(zhí)行:

  • -t <template> 模板文件夾智什,經(jīng)過jinja2解釋并復(fù)制到目標(biāo)文件夾
  • name 需要?jiǎng)?chuàng)建的模塊名动漾,會(huì)根據(jù)這個(gè)名字去自動(dòng)生成模塊文件夾名之類的
  • destination 模塊創(chuàng)建后所存放的文件夾,默認(rèn)當(dāng)前執(zhí)行環(huán)境的文件夾

配置文件

大部分命令行選項(xiàng)可以通過一個(gè)配置文件來指定荠锭,大部分只需將選項(xiàng)名前的-移除旱眯,并將其他的-替換為_,如(--db-template=>db_template)
某些轉(zhuǎn)換比較特別:

  • --db-filter => dbfilter
  • --no-xmlrpc => xmlrpc(boolean)
  • 預(yù)先通過--log-xxx選項(xiàng)設(shè)置的記錄直接被添加到log_handler证九,可直接在配置文件中設(shè)置
  • --smtp => smtp_server
  • --database => db_name
  • --debug => debug_mode (boolean)
  • --i18n-import,--i18n-export 在配置文件中無效

默認(rèn)的配置文件是$HOME/.odoorc,可用--config指定愧怜,并可用--save 來保存當(dāng)前配置


譯自odoo官方文檔:http://www.odoo.com/documentation/10.0/reference/module.html呀页,http://www.odoo.com/documentation/10.0/reference/cmdline.html,不當(dāng)之處歡迎批評(píng)指正拥坛。

內(nèi)容發(fā)布自http://www.reibang.com/u/6fdae8ec06bc蓬蝶,轉(zhuǎn)載請(qǐng)注明出處

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末尘分,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子丸氛,更是在濱河造成了極大的恐慌培愁,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件缓窜,死亡現(xiàn)場(chǎng)離奇詭異定续,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)禾锤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門香罐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人时肿,你說我怎么就攤上這事庇茫。” “怎么了螃成?”我有些...
    開封第一講書人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵旦签,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我寸宏,道長(zhǎng)宁炫,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任氮凝,我火速辦了婚禮羔巢,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘罩阵。我一直安慰自己竿秆,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開白布稿壁。 她就那樣靜靜地躺著幽钢,像睡著了一般。 火紅的嫁衣襯著肌膚如雪傅是。 梳的紋絲不亂的頭發(fā)上匪燕,一...
    開封第一講書人閱讀 49,007評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音喧笔,去河邊找鬼帽驯。 笑死,一個(gè)胖子當(dāng)著我的面吹牛书闸,可吹牛的內(nèi)容都是我干的尼变。 我是一名探鬼主播,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼梗劫,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼享甸!你這毒婦竟也來了截碴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤蛉威,失蹤者是張志新(化名)和其女友劉穎日丹,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蚯嫌,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡哲虾,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了择示。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片束凑。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖栅盲,靈堂內(nèi)的尸體忽然破棺而出汪诉,到底是詐尸還是另有隱情,我是刑警寧澤谈秫,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布扒寄,位于F島的核電站,受9級(jí)特大地震影響拟烫,放射性物質(zhì)發(fā)生泄漏该编。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一硕淑、第九天 我趴在偏房一處隱蔽的房頂上張望课竣。 院中可真熱鬧,春花似錦置媳、人聲如沸于樟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽隔披。三九已至赃份,卻和暖如春寂拆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背抓韩。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來泰國打工纠永, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人谒拴。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓尝江,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國和親英上。 傳聞我的和親對(duì)象是個(gè)殘疾皇子炭序,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容