国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

四子王旗建設(shè)局網(wǎng)站營銷策略

四子王旗建設(shè)局網(wǎng)站,營銷策略,烏魯木齊網(wǎng)站開發(fā)價格,門店到什么地步可以做網(wǎng)站Odoo丨Odoo框架源碼研讀三:異常處理與定制化開發(fā) Odoo源碼研讀的第三期內(nèi)容:異常處理與定制化開發(fā)。 *異常處理* Odoo中的Exception是對Python內(nèi)置異常做了繼承和封裝,設(shè)定了自己核心的幾個Exception。 而對異常的處理和Python內(nèi)置異常的…

Odoo丨Odoo框架源碼研讀三:異常處理與定制化開發(fā)

Odoo源碼研讀的第三期內(nèi)容:異常處理與定制化開發(fā)。

*異常處理*

Odoo中的Exception是對Python內(nèi)置異常做了繼承和封裝,設(shè)定了自己核心的幾個Exception。

而對異常的處理和Python內(nèi)置異常的處理方式并無不同。

圖片

異常處理:

raise:通過raise來主動拋出異常。

try-except-finally:捕獲異常進(jìn)行處理。

*流程引擎與業(yè)務(wù)流程*

流程引擎:

作為ERP產(chǎn)品,必然要處理很多流程,對于流程的控制,Odoo是通過狀態(tài)值的變化來進(jìn)行控制的,也就是簡單的狀態(tài)機(jī)。

以銷售模塊為例:

圖片

圖片

一個銷售訂單從報(bào)價(Draft)到銷售訂單(Sale),實(shí)際上就是訂單狀態(tài)的改變。

業(yè)務(wù)流程:

圖片

模塊之間的跳轉(zhuǎn)一般都是基于視圖跳轉(zhuǎn),而視圖的跳轉(zhuǎn)都是通過Action來進(jìn)行跳轉(zhuǎn)。

一般都是通過添加按鈕來調(diào)用Action動作進(jìn)行視圖跳轉(zhuǎn),完成流程的跳轉(zhuǎn)。

*定制化開發(fā)*

手動編碼

Odoo的定制化開發(fā)主要都是通過新建module繼承原module對原module進(jìn)行拓展。

而拓展的內(nèi)容分四個方面:

# Model的拓展

通過對原Model的繼承(三種繼承方式,詳見官方文檔),增加Field和重寫Method等。

圖片

# XML視圖的拓展

通過對視圖繼承,可以在原有視圖上增添元素,比如按鈕、字段等。

還有就是qweb自定義視圖,這個通過qweb語法去創(chuàng)建自定義的視圖。

圖片

# 前端組件的拓展

通過include/extend來重寫或者繼承原有前端js組件,創(chuàng)建自定義組件,然后通過xml將創(chuàng)建的js引入即可。

# controller的拓展

原有的公共Controllers已經(jīng)不能滿足特定需求,可以模仿系統(tǒng)自帶的Controller創(chuàng)建自己Controller和Api方法。

配置化開發(fā):

Odoo Studio模塊開發(fā)者模式下,對視圖XML的修改會因?yàn)槟K升級而丟失。

究其原因,主要還是開發(fā)者模式下,是直接修改數(shù)據(jù)庫存儲的視圖XML內(nèi)容,模塊下次升級時,會把XML內(nèi)容覆蓋,導(dǎo)致修改丟失。

而Studio通過新建module的方式去做module繼承、視圖繼承、model繼承來對原有的模塊做拓展,這樣的話,原模塊的升級并不會影響新建模塊,所以不會丟失修改。

商業(yè)版Odoo中存在Studio模塊,支持通過拖拽方式進(jìn)行配置新模塊或?qū)υK進(jìn)行拓展。

圖片

通過解讀Studio模塊的代碼可以看出,Studio提供了創(chuàng)建App、編輯View視圖、設(shè)置背景圖片等接口,這也就解釋了Studio拖拽配置頁面的背后,實(shí)際是調(diào)用了這些封裝的接口。

再深入到接口內(nèi),可以看出實(shí)際上是操作了視圖相關(guān)的model(ir.ui.menu,ir.ui.action,…)。

比如創(chuàng)建App這個操作,我們來看其中邏輯 ?

圖片

  • 1)ir.model給新module創(chuàng)建新的model(ir.model);
  • 2)通過創(chuàng)建好的model,來創(chuàng)建model的默認(rèn)的action(ir.actions.window);
  • 3)創(chuàng)建module對應(yīng)的菜單樹(ir.ui.menu),以及關(guān)聯(lián)的action。

這個流程看起來和Odoo提供的官方文檔上創(chuàng)建模塊的流程是不是非常一致?

與之不同的是,這里是直接在數(shù)據(jù)庫創(chuàng)建對象,省去了模塊安裝的過程。

同樣,對其他試圖、model等的拓展實(shí)際和官方文檔的流程并無區(qū)別。

*總結(jié)*

本文通篇著眼于Odoo后端對于請求的處理流程,從請求流轉(zhuǎn)的過程來看Odoo的后端架構(gòu)。

但對很多地方都是一帶而過,其中包括threadLocal、cache緩存、orm對接數(shù)據(jù)庫的具體細(xì)節(jié)、以及包括前端的框架的介紹等,這些都是后面努力的方向。

分享就到這了,文中如果有不當(dāng)之處,歡迎大家指出,不吝賜教!

http://m.aloenet.com.cn/news/36550.html

相關(guān)文章:

  • 三農(nóng)建設(shè)委員官方網(wǎng)站口碑營銷案例2021
  • 普陀網(wǎng)站建設(shè)seo外包公司多少錢
  • 深圳交友網(wǎng)站建設(shè)nba交易最新消息
  • 貿(mào)易公司做網(wǎng)站有優(yōu)勢嗎怎么在百度做網(wǎng)站推廣
  • 網(wǎng)站優(yōu)化培訓(xùn)學(xué)校成都網(wǎng)站建設(shè)方案外包
  • 搭建視頻服務(wù)器武漢網(wǎng)站搜索引擎優(yōu)化
  • 網(wǎng)站改版開發(fā)公司鄭州做網(wǎng)站推廣哪家好
  • 百度做網(wǎng)站審核要多久服務(wù)營銷理論
  • 網(wǎng)站頁面怎么做識別二維碼谷歌引擎搜索入口
  • 網(wǎng)站建設(shè)和網(wǎng)絡(luò)營銷濟(jì)寧百度推廣公司
  • 專業(yè)制作網(wǎng)站服務(wù)公司深圳龍崗區(qū)優(yōu)化防控措施
  • 長沙專業(yè)做網(wǎng)站seo含義
  • 如何做外圍網(wǎng)站的代理關(guān)鍵詞排名是由什么決定的
  • 官方網(wǎng)站做自適應(yīng)好還是響應(yīng)式廈門人才網(wǎng)個人會員
  • 設(shè)計(jì)集合網(wǎng)站北京seo推廣服務(wù)
  • 潛江網(wǎng)站建設(shè)如何提高搜索引擎優(yōu)化
  • 長沙企業(yè)網(wǎng)站建設(shè)品牌廣州各區(qū)最新動態(tài)
  • 上海網(wǎng)站關(guān)鍵字優(yōu)德國搜索引擎
  • 滎陽做網(wǎng)站推廣知乎推廣渠道
  • 海南海口做網(wǎng)站軟文推廣發(fā)稿
  • 淘寶客網(wǎng)站制作教程推廣團(tuán)隊(duì)
  • 西安網(wǎng)站外包臺州做優(yōu)化
  • 好網(wǎng)站開發(fā)培訓(xùn)夜夜草
  • php無版權(quán)企業(yè)網(wǎng)站管理系統(tǒng)企業(yè)網(wǎng)站推廣外包
  • 網(wǎng)站做推廣頁需要什么軟件seo收錄查詢
  • 外貿(mào)響應(yīng)式網(wǎng)站google服務(wù)框架
  • 贛icp上饒網(wǎng)站建設(shè)seo網(wǎng)站推廣實(shí)例
  • 可以做科學(xué)模擬實(shí)驗(yàn)的網(wǎng)站百度指數(shù)怎么查詢
  • c語言做網(wǎng)站賬號登錄系統(tǒng)銷售網(wǎng)站有哪些
  • 網(wǎng)站提交百度收錄怎么簡單制作一個網(wǎng)頁