【问题标题】:Sorry, the page you are looking for could not be found抱歉,找不到您要查找的页面
【发布时间】:2018-04-22 10:30:22
【问题描述】:

我有以下网络路线:

Route::get('/Observation/{type}/list/{status}', 'ObservationController@index')->name('list_observation');

当我从以下网址打开该路线时:

localhost:8088/hse/public/Observation/status/list/all

显示错误:

  Sorry, the page you are looking for could not be found.

在此之前它正在工作,然后突然出现了这个问题。

【问题讨论】:

  • 在你的项目目录中输入终端:php artisan route:list,然后你就可以看到如何使用你的路由了。我在这里试过你的,它与project.dev/Observation/status/list/all(project.dev 来自代客)配合得很好
  • @Matz C:\xampp\htdocs\hse>php artisan route:list [Symfony\Component\Debug\Exception\FatalThrowableError] 在 null ,,, 另一个上调用成员函数 parameter()路线工作正常
  • 为什么在url中使用public?你的路线应该在hse之后
  • @Onix 因为我没有使用 laravel homestead ,所以我使用本地主机 xampp ,并且在 Laravel 中,默认情况下,控制器和视图是从主文件夹 /public 访问的。
  • 是的,公开是正确的。因此,如果php artisan route:list 返回错误,则说明您在某处存在语法错误

标签: laravel routes http-status-code-404 laravel-5.5


【解决方案1】:

通过将参数名称 {status} 更改为 {value} 解决。 并且在控制器中更改了以下内容:

来自受保护的 $status ;保护 $value ;

 __construct() {

 $this->value = Route::current()->parameter('value');
}

我认为问题是因为我传递了带有变量 $status 的模型名称状态作为 index() 方法的参数

public function index(status $status)

且模型名与类保护状态变量名相同。

【讨论】:

    猜你喜欢
    • 2017-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 2016-11-15
    • 2017-01-07
    • 1970-01-01
    相关资源
    最近更新 更多