一招解決OpenERP8 0安裝舊版模組報錯

2022-08-20 02:36:12 字數 1149 閱讀 1944

有喜歡嘗鮮的網友開始玩8.0了,可是版本還沒發布,社群的很多特別好的模組還沒有公升級到8,所以經常碰到模組無法安裝的問題。

no module name osv

網友提出將模組的 from osv import osv,fields 改為 from openerp.osv import osv,fields

其實這是乙個程式設計規範問題,舊版模組**裡很多這種匯入方式,乙個乙個改對於不懂**的或者openerp新手是不現實的。

眾所周知,openerp的執行入口是openerp-server.py,在6.0及之前版本,這個入口檔案和其他server包是在同乙個目錄的,但是openerp6.1開始這個目錄被提公升了乙個目錄。server包都放在了乙個叫做 openerp的目錄下,而 openerp-server.py 被重新命名為 openerp-server(沒有字尾名)和openerp目錄同級。有誰知道這個偉大創新有什麼意義請舉手。我個人認為是瞎折騰。而python的特性決定它在匯入包的時候是按入口檔案的位置找相對路徑的。所以這個頂級目錄結構改動的結果就是,我們需要在所有的import語句裡加上openerp.這個字首。即使是openerp公司自己也花了兩年的時間才在trunk版本裡做完了所有這些相應的修改。非官方模組就更難跟上進度了。

必須有個臨時解決方案,那就是openerp/conf/deprecation.py這個檔案

裡面定義了乙個變數,open_openerp_namespace,在7.0裡這個值是true,也就是說即使你模組裡import osv也不會報錯,因為server乖乖滴去openerp這個目錄去找osv目錄,而不會報錯。

但是8.0不一樣了,openerp公司已經改過了所有他們負責的模組,他們不再需要這個臨時方案了,然後我們看到在8.0版本裡這個變數值為設為了false

這就是7.0裡可以安裝的oecn_base_fontsauto_backup等模組在8.0裡無法安裝的原因。

如果你希望使用其他非官方模組,我建議你把這個值改成true

一招解決蘋果內購漏單問題

蘋果內購漏單的問題一直都是個頭疼的問題,相信有很多公司都遇到這樣的問題,今天來說說我是怎麼解決蘋果內購漏單的問題的。解決思路 1.使用者下單成功後我們需要儲存使用者的下單資料,將productid,orderid,cporderid等資訊儲存到本地資料庫 2.拉起內購讓使用者完成購買行為 3.使用者...

scrapy 遇到亂碼怎麼辦?一招解決

xx交通委提醒您注意爬蟲安全,千萬條,安全第一條,編碼不規範,親人兩行淚 在使用scrapy資料抓取過程中,經常會遇到這種情況 58這類自己專門設定了字符集反爬措施 除外 解決思路 download minddlewares中有個process response方法,修改它即可 因為 respons...

經典 電腦忘記密碼怎麼辦,一招解決

1 安全啟動 2 net user anyone pwd add 3 localgroup administrators anyone add 4 重啟,使用anyone登入,密碼是pwd 1 強制重啟,提示修復,選中troubleshoot疑難解答 再選擇advanced options。這一步操...