2016-07-27 15 views
1

誰在本地主機上工作? 我有兩個codeigniter3系統。例如MyApp是主要的應用程序,而Service只是api服務。 在Service應用程序中,我有模塊中的服務。 結構是這樣的如何在codeigniter 3中使用假想目錄的路由?

modules/ 
     services/ 
     controllers/ 
        Myservice->getAllStuff() 
     models/ 
     views/ 
在這個「服務」應用程序的$路線

,我把這樣的事情

$route['admin/services/list'] = 'services/Myservice/getAllStuff'; 

現在回MyApp應用程序。在我的控制器的一個我這樣定義

const URL_SERVICE = 'service/admin/services/list' 

一個常量,當我用捲曲並通過該常量URL(加上本地主機:8888基本URL),我看到的錯誤日誌在我apache_error.log說像這樣的東西

[error] [client ::1] File does not exist: /Applications/MAMP/htdocs/service/admin 

爲什麼啊?,我以爲CI的路由只會掩蓋現有的目錄/控制器/函數url? 。我做錯了什麼?

+0

看起來好像你在做這件事比它需要的更復雜。 [您是否閱讀過文檔並執行本教程?](http://www.codeigniter.com/user_guide/tutorial/static_pages.html#routing)'$ route ['admin/services/list']'只是URL作爲輸入到瀏覽器中,並且''services/Myservice/getAllStuff'是您的函數的實際CodeIgniter路徑,'[controller-class]/[controller-method]/[arguments]'。 – Sparky

+0

我實際上試圖從$ route中刪除「admin」字符串...所以它變成$ route ['admin/services/list']仍然無法正常工作我正在獲取apache_error.log中的錯誤 – sasori

+0

路由順序高層路線優先的地方也很重要。如果你還沒有閱讀整個CodeIgniter手冊並完成了教程,它只需要幾個小時,你會在稍後感謝我。 – Sparky

回答

1

我的問題是通過在const URL值中加入「index.php」來解決的。 這樣

const URL_SERVICE = 'service/index.php/admin/services/list' 

織補..我花了小時lol..but這出至少案件告破。