路线::使用选项和功能获取在laravel中无法正常工作

时间:2018-12-17 13:04:10

标签: php laravel laravel-5

我想使用Route :: get以及路线选项,功能和位置。以下是我的路线代码:

Route::get('/view/{id}', array('uses' =>'BookController@view','as' => 'book.view'), function($id)
{
    die('hello');

})->where('id', '[A-Za-z]+');

因此,当我调用url view/4时,它将打开404页,而当我调用view/abc时,它将运行控制器代码,但在两种情况下均未执行功能代码。

我该如何解决?

1 个答案:

答案 0 :(得分:0)

对于路由,您已经在“ id”变量中添加了限制,并且应该仅是字符串“-> where('id','[A-Za-z] +');”

因此,如果您使用数字,那么这里没有问题,应该可以让您得到404

对于控制器问题,您将其编码错误,因为您添加了控制器,并且同时编写了Closure,而您只需要编写一个。

所以试试这个

Route::get('/view/{id}', ['uses' =>'BookController@view','as' =>'book.view'])->where('id', '[A-Za-z]+');

并使用数字尝试这个

Route::get('/view/{id}', ['uses' =>'BookController@view','as' =>'book.view']);

谢谢