CodeIgniter
domain/controller_name/method-name/method_parameters
在你的第一个 url 中读取一个 url,http://myapp/locations/1
第一部分 (myapp) 是你的域名,第二部分 (locations) 是你的控制器名称,第三部分应该是控制器的方法名称,在这种情况下你已经通过了1
,显然没有这样的方法名称,所以它显示错误。
如果您domain/controller_name
像在此 url 中所做的那样通过http://myapp/locations
,则 CodeIgniter 将第一部分读取为 thedomain_name
和第二部分controller_name
,当 url 中没有第三部分时,CodeIgniterindex
默认调用方法/函数,因此您的第二个 url 正在工作.
在您拥有的最后一个网址中http://myapp/locations/main/locations/1
,它被读作
myapp
-域名
locations
-控制器名称
main
-方法/函数名称
其余的都作为main
控制器的参数传递。所以请记住,url 的第三部分是method/function
名称,如果没有给出第三部分,则默认CodeIgniter
调用该index
方法,在这种情况下,您必须在该控制器中声明一个默认index
方法/函数,否则会发生错误。