可以使用控制器通过->with()
将参数传递给页面,例如
public function two(){
return View::make('page2')->with('id', 2);
}
现在$id
可以在page2.blade.php
但是我想通过url传递参数,如下面的方式
routes.php文件
<?php
Route::get('page1',
array(
'uses' => 'pagecontroller@page1'
));
Route::get('page2/{$id}',
array(
'uses'=>'pagecontroller@page2'
));
pagecontroller.php
<?php
class pagecontroller extends BaseController{
public function page1(){
return View::make('page1');
}
public function page2($id){
return "ID : $id";
}
page1.blade.php
<p>This Is Page1</p>
<a href="{{action('pagecontroller@page2', array('id'=>1) )}}">Page2</a>
它显示错误:Symfony \ Component \ HttpKernel \ Exception \ NotFoundHttpException
哪里出错?
答案 0 :(得分:1)
你的路线上有一点错字。参数定义时没有“$”前缀。
Route::get('page2/{$id}',
应该是
Route::get('page2/{id}',
请在更改routes.php文件后记得composer dump-autoload
。
您可能需要花点时间查看有关路由参数的文档 http://laravel.com/docs/routing#route-parameters