Codeigniter参数

时间:2012-10-20 23:42:42

标签: codeigniter codeigniter-2 codeigniter-url codeigniter-routing

我已经阅读了URI参数用户指南,但仍然有一个问题:

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

具有以下内容: {http:// myapp / locations / 1}我收到404错误... {http:// myapp / locations}适当地执行主控制器中的index()函数 {http:// myapp / locations / main / locations / 1}有效,值正确传递给index($ var)

我在Main中有其他功能。

如何才能让第一行工作才能清理网址?

提前致谢, 艾伦

1 个答案:

答案 0 :(得分:1)

CodeIgniter将网址读取为domain/controller_name/method-name/method_parameters并在您的第一个网址http://myapp/locations/1中,第一部分(myapp)是您的域名,第二部分(位置)是您的控制器名称,第三部分是部分应该是控制器的方法名称,在这种情况下你已经通过1,显然没有这样的方法名称,所以它显示错误。

如果您在此网址domain/controller_name中传递了http://myapp/locations,那么CodeIgniter会将第一部分读作domain_name,将第二部分读作controller_name并在那里在url中没有第三部分,然后CodeIgniter默认调用index方法/函数,所以你的第二个url正在工作。

在您的上一个网址中,您有http://myapp/locations/main/locations/1,并且已被视为

myapp - 域名

locations - 控制器名称

main - 方法/功能名称

和其余的全部作为main控制器的参数传递。所以请记住,网址的第三部分是method/function名称,如果没有给出第三部分,则CodeIgniter默认调用index方法,在这种情况下,您必须声明默认值

。该控制器中的index方法/功能,否则将发生错误。

相关问题