路由 --- 在模板中跳链接地址错误

之前一直没有使用路由,现在开发使用路由后发现当使用路由后跳入模板,模板中超链接 href=“” 再使用之前的方法解析地址不对。。。。。

路由设置

Route::get('goods/search/:cate_id', 'index/goods/index');

想要生成的链接: http://127.0.0.51/goods/search/1396

 

解决方案1:

<a href="{:url('index/goods/index', array('cate_id' => $cat->id))}">{$cat->name}</a> (可用)

<a href="{:url('index/goods/index')} / {$cat->id}">{$cat->name}</a>   http://127.0.0.51/index/goods/index/1396(错误)

如果使用,路由后面不能跟必须参数,改为 [:cate_id]

 

解决方案二:

<a href="/goods/search/{$cat->id}">{$cat->name}</a> (可用)

<a href="{:url('/goods/search', array('cate_id' => $cat->id))}">{$cat->name}</a>  http://127.0.0.51/goods/search/cate_id/1396 (错误)

<a href="{:url('/goods/search')} / {$cat->id}">{$cat->name}</a> (推荐)

重定向的外部地址必须以“/”或者http开头的地址。

如果路由地址以“/”或者“http”开头则会认为是一个重定向地址或者外部地址,

 

posted @ 2019-03-19 09:56  王玉岩  阅读(176)  评论(0编辑  收藏  举报