1

我讀過的URI參數的用戶指南,仍然有一個問題:笨參數

http://codeigniter.com/user_guide/general/routing.html

下列要求: {HTTP:// MYAPP /位置/ 1}我得到一個404錯誤... {http:// myapp/locations}正確執行主控制器 {http:// myapp/locations/main/locations/1}中的index()函數,並將該值正確傳遞給索引($ var)

我在Main中有其他的功能。

如何才能使第一行工作以清除URL?

由於提前, 艾倫

回答

1

CodeIgniter讀取URL作爲domain/controller_name/method-name/method_parameters和在這裏的第一URL http://myapp/locations/1所述第一部分(MyApp的)是你的域名,第二(位置)是您的控制器名稱和第三部分應該是控制器的方法名稱,在這種情況下,你已經通過了1,顯然沒有這樣的方法名稱,所以它顯示錯誤。

如果傳遞domain/controller_name像你在這個網址http://myapp/locations在這裏做,然後笨讀取第一部分爲domain_namecontroller_name和第二部分時,有url中沒有第三部分則笨調用index方法/函數默認情況下,所以你的第二個網址工作。

在你最後的網址你有http://myapp/locations/main/locations/1和它被解讀爲

myapp -domain名

locations -controller名

main - 方法/函數名

和所有的休息作爲控制者的論據傳遞給main。所以請記住,url的第三部分是method/function名稱,如果第三部分沒有給出,那麼CodeIgniter默認調用index方法,在這種情況下,您必須在該控制器中聲明缺省的index方法/函數,否則會出現錯誤發生。