路线变量不起作用

时间:2018-05-15 17:59:33

标签: php laravel laravel-5

为什么这条简单的路线不起作用?

Route::get('/test/{id?}', function ($id = 1) {
    return view('test');
});

这是“测试”视图(test.blade.php)中的内容:

This is a test: {{ $id }}.

如果我输入:

http://laravel.test/test

http://laravel.test/test/1

我总是收到这个错误:

This is a test: <?php echo e($id); ?>.

"Undefined variable: id (View: /home/vagrant/code/test/resources/views/test.blade.php)"

1 个答案:

答案 0 :(得分:2)

路径参数在视图中不会自动可用,除非您将其显式传递给视图。此调整将使其可用。

Route::get('/test/{id?}', function ($id = 1) {
    return view('test', ['id' => $id]);
});