1. 程式人生 > >Odoo 8.0遠端呼叫http.route時提示404

Odoo 8.0遠端呼叫http.route時提示404

最近在做一個專案時,因為有些資料需要提供給其它客戶端查詢,本來也可以通過xmlrpc來操作,但這樣前端寫js的人就需要對oe的資料表物件關係非常清楚,為了簡化前端呼叫,我們最終採用的是在伺服器端建立一些api介面,由前端通過ajax來呼叫。

開始在模組中通過http.route建立了一些url介面,伺服器已經根據前端需求返回指定的json格式,但在測試時,發現前端呼叫時,總是返回404的錯誤,除錯、追蹤了大半天,最終發現問題是在資料庫上面,因為我在oe上建了兩個資料庫,正常通過瀏覽器登入時,我們是先選擇資料庫,選擇後oe會檢查所選資料庫已經安裝的模組,並將所有已安裝模組中的http.route建立一個對映表,當後面再有url訪問時,通過這個對映表來確認呼叫哪個py方法。

如果沒有前面的選擇資料庫動作,直接通過url訪問時,此時oe並不知道你要訪問哪個資料庫,也無法建立url與py方法的對映,所以直接返回了404的錯誤。

最終權宜之計是我刪除了其它的資料庫,只保留了一個數據庫,這樣oe在啟動時,就會直接載入此資料庫的url對映,就可以正常訪問。

但這樣子理解,又有一個問題不明白,如果說資料庫多的時候,系統不知道使用哪個資料庫中的url對映,那為什麼系統自帶的一些url又沒問題,比如/web/login,當我們使用此url時,oe能正確定位到py方法中,不知道是不是/web開頭的url哪裡有特殊處理?

這個問題後續再仔細瞭解。。。

後來檢視原始碼,原來在openerp.conf.server_wide_modules列表中,是有記錄預載入的模組的地方,web模組是屬於與資料庫無關的預載入模組,所以沒有選擇資料為時,系統也能訪問url對應的py方法。這個列表可以在oe伺服器執行時,通過--load引數來指定,所以我們自己的模組要在oe啟動時就響應url請求,則只要預載入自己的模組即可。

相關推薦

Odoo 8.0遠端呼叫http.route提示404

最近在做一個專案時,因為有些資料需要提供給其它客戶端查詢,本來也可以通過xmlrpc來操作,但這樣前端寫js的人就需要對oe的資料表物件關係非常清楚,為了簡化前端呼叫,我們最終採用的是在伺服器端建立一些api介面,由前端通過ajax來呼叫。 開始在模組中通過http.rou

odoo 8.0 多核啟用

itl 虛擬 jpg com 分享 roo aaa 成了 建議 對於很多企業來說,隨著時間的推移,用戶量或者企業建點擴張,使用erp就會出現應用訪問越來越慢的情況, 其實這種情況不但限於erp,只要是有數據量增長的互聯網業務必然會遇到的,因為一開始的是就

mysql 8.0 遠端連不上navicate 報錯

  發現是加密方式的問題 原來新版的mysql的加密方式不同於5.7 http://binary-space.iteye.com/blog/2412769 參考上面這篇文章 類似這種方法 換個加密方式就行了 ALTER USER 'root'@'%' IDENTI

odoo 8.0 多核啟用,python多核心利用測試

轉自: Difference between built-in multiprocessor-mode and gunicorn odoo 在配置workers後的錯誤解決方法 python多核心利用測試 時間:2016-04-18 11:31:26&n

[精]Odoo 8.0深入淺出開發教程(五) Odoo開發模組

在實際編寫前先談談理論,這部分理論討論非常有用,對於具體編寫模組的時候你清楚自己在感謝什麼很有幫助。感謝老肖的《OpenERP 應用和開發基礎》一書,該書第六章對我幫助很大。 首先我們需要一個選單,那麼這個選單在Odoo框架中是如何生成的呢?前面談到Odoo的模型具體的物件實際上就是SQL表格的一條記錄

django 和Navicat 連線 MYSQL 8.0遠端連線

MYSQL 8.0內新增加mysql_native_password函式,通過更改這個函式密碼來進行遠端連線。 更改ROOT使用者的native_password密碼,直接用ROOT使用者的賬號密碼去連線是不行,即時密碼正確。 mysql> ALTER

odoo 8.0 多核啟用,python多核心利用測試

A-A+          對於很多企業來說,隨著時間的推移,使用者量或者企業建點擴張,使用erp就會出現應用訪問越來越慢的情況,其實這種情況不但限於erp,只要是有資料量增長的網際網路業務必然會遇到的,因為一開始的是就沒有做好大資料量的訪問情況。         o

遠端win10系統桌面提示憑證不工作問題的終極解決辦法

環境說明 遠端辦公電腦(放置於公司、自用辦公電腦、win8系統) 遠端連線客戶機(放置於家中、家庭日常所用、win8系統) 故障現象      最近在使用遠端桌面連線公司的辦公電腦時,突然發現win8系統總是無法連線成功,提示“你的憑證不工作”,使用其他

遠端連線windows伺服器提示:要求的函式不支援

win10系統遠端連線windows伺服器時提示下面圖片中的問題: 解決辦法: 開啟登錄檔, 將\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parame

VMWare 10.0.2虛擬機器啟動提示“內部錯誤”的解決辦法

問題: 1. 該虛擬機器安裝有一個多月了,一直在用,不僅今天上午還在用,剛剛重啟系統前也在用,但是,重啟系統之後點選“啟動客戶機”,VMWare提示“內部錯誤”。 解決辦法: 1. 懷疑可能是內部邏輯出問題了,原來的虛擬機器狀態為“掛起客戶機”狀態; 將該虛擬機器“關機”,

PHP URL中包含中文,查看提示404

not pla 再次 ros index oca 參考 utf cnblogs 使用Microsoft Web Platform在IIS裏配置安裝一個wordpress,一切順利。 當添加一片文章時,自動生成URL類似如下: http://localhost/wordp

在Eclipse中開啟tomcat後輸入http://localhost:8080提示404錯誤

在控制檯中選擇server 雙擊tomcat server 檢視server  locations 中選擇的是哪一項 如果選中的是第一項就改為第二項,如果三項都是灰色的就把server配置刪除後重新配置,按剛才的步驟該

Android Studio 第五十七期 - Android運行權限4.08.0

運行時權限 代碼已經整理好,效果如下圖: 地址:https://github.com/geeklx/myapplication2018/tree/master/p001_fitandroid7Android Studio 第五十七期 - Android運行時權限4.0至8.0

創建Dynamic Web Project 顯示最新Apache Tomcat 8.0 的方法

log png tomcat com tom art ins 最新 發現 創建Dynamic Web Project時 顯示最新Apache Tomcat 8.0 等的方法 解決辦法如下: 第一步:eclipse菜單help->eclipse marketpla

安裝mysql 8.0版本,使用front連接報1251錯誤或者navicat 連接報錯2059解決方案

with clas 解決 ring class func eve 刷新 IE 這個錯誤出現的原因是在mysql8之前的版本中加密規則為mysql_native_password,而在mysql8以後的加密規則為caching_sha2_password。 解決此問題有兩

安裝mysql 8.0版本,使用navicat 連接報1251錯誤解決方案

sha cal TE roo oot string XP 規則 nat 今天安裝mysql8 使用navicat 連接時報錯 1251 這個錯誤出現的原因是在mysql8之前的版本中加密規則為mysql_native_password,而在mysql8以後的加密規則為ca

GNS3 0.8.6計算idle pc值出現Failed to find a working Idle PC value. Can't set up hypervisor on 127.0.0.1等問題

idle 計算 是否 image src bubuko 一個 work find 這學期在學計算機網絡,實驗課要用到gns30.8.6模擬。但是按照老師所給教程在設置idle pc時出現Failed to find a working Idle PC value. Can‘

Location許可權,因系統版本不同,6.0許可權對話方塊沒有,7.08.0正常,開發要注意

1、一個獲取Location許可權引發的刺激,就這三個Location許可權 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission an

17 win7 sp1 x64/VS2015下配置creo4.0二次開發環境——呼叫了眾多開源庫(ceres-solver,PCL1.8.0,office 2016COM介面,MySql資料庫等)

0 引言 本次開發環境的配置是在綜合考慮了開源庫的版本、VS版本以及CREO4.0的版本,同時針對甲方需求選擇了win7 sp1 x64系統。 配置的過程中遇到了形形色色的問題,但是一一解決了。通過這一個帖子,希望總結環境配置的經驗,為以後的專案開發提供借鑑。 1 VS2015 在win7 sp1 x64

遠端呼叫方式 ==> RPC與Http的比較

一.遠端呼叫方式 無論是微服務還是分散式服務(都是SOA,都是面向服務程式設計),都面臨著服務間的遠端呼叫。那麼服務間的遠端呼叫方式有哪些呢? 常見的遠端呼叫方式有以下幾種: RPC:Remote Produce Call遠端過程呼叫,類似的還有RMI(Remote M