Kohana路由

路由是Kohana中的难点之一:

前面知道:Controller::rediect("welcome/index");会访问控制器 welcome的index函数

其实它的原理就是  :

     页面发出对控制器index函数的请求;

     找到当前使用匹配的路由;

     按路由规则找控制器,再找到对应的函数。

 

  疑问: 路由是一个非常重要的概念,如手册所说,你可以用路由做很多不可思议的事情。但是学到现在,个人感觉路由只是定位你控制器下面的函数,没感觉有手册说的那么夸张:

现在深入探究下路由的使用:

1,路由有自己的name,会不会是所有的路由根据name来区别。所有的控制器,视图或者自己新建立的文件夹项目都可以有属于自己的路由。

  不继续猜想了,请看提示2.

 2,手册中的转向404页面提示我,为什么要有多个路由,因为根据url编写的规则然后控制路由的转向才是路由的精髓所在。

   优先极的问题:

   在同一个页面中,相同的规则的路由越往上就越先调用。

   模块中的init.php比bootstarp.php先调用。

规则学习:

  我觉得弄懂了规则就相当与弄懂了路由。

  先看分析下kohana默认路由:(有过REGEX学习的可以看下Kohana_Route类)

1 Route::set('deflaut', '(<controller>(/<action>(/<id>)))')
2 ->defaults(array(
3 'controller' => 'welcome',
4 'action'     => 'index',
5 'id'=>'myid',
6 ));

  注意这个规则 (<controller>(/<action>(/<id>))) 共有() ,<>,/三个符号,<>表示键值,()表示该参数可有可无,如果没有的话就会匹配到默认值 defaults数组中的值。/表示界限符。

  思考:路由只能定位到控制器么??

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/canbefree/p/3663761.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值