Parameters 将可选参数值从laravel route传递给控制器
如何将可选参数从laravel route传递到控制器?我正在使用:Parameters 将可选参数值从laravel route传递给控制器,parameters,controller,routes,laravel,optional,Parameters,Controller,Routes,Laravel,Optional,如何将可选参数从laravel route传递到控制器?我正在使用: Route::get('test/{id?}', function($id = 5){}); 但它不起作用 更新:Laravel版本4 代码现在可以工作了,但是我视图中的Backbone.js脚本无法工作。它不会从服务器获取数据(返回错误) 路线: Route::get('test/{id?}', 'TestController@index', function ($id = 5) {}); 控制器: public fun
Route::get('test/{id?}', function($id = 5){});
但它不起作用
更新:Laravel版本4
代码现在可以工作了,但是我视图中的Backbone.js脚本无法工作。它不会从服务器获取数据(返回错误)
路线:
Route::get('test/{id?}', 'TestController@index', function ($id = 5) {});
控制器:
public function index()
{
$pitanja = DB::select('select * from pitanja ORDER BY RAND() LIMIT 15');
$znakovi = DB::select('select * from znakovi ORDER BY RAND() LIMIT 15');
Cache::forever('pitanja', $pitanja);
Cache::forever('znakovi', $znakovi);
return View::make('test.index', compact('pitanja'), compact('znakovi'));
}
当我的URL为/test/4
时,我的Backbone.js代码将无法从服务器获取(通过此函数):
(Backbone.js控制器中的URL是URL:'/testovi/pitanja'
)对不起,误读了
您需要检查路线的顺序
Route::get('test/{a?}', function($a = '0') {
echo $a;
});
对我来说效果很好。我希望它成为laravel 4文档中的可选路由参数:当我像上一篇文章那样做时,它可以工作,但我的backbone.js代码无法工作(它无法从服务器获取数据)。更新了答案,很抱歉误读了您的问题。检查路线的顺序。尝试将其放在routes.php的顶部。
Route::get('test/{a?}', function($a = '0') {
echo $a;
});