您要查找的页面未找到laravel 5.5
我得到了 很抱歉,找不到您要查找的页面 关于拉威尔5.5。我肯定我错过了一些很小的东西。但我不确定这是什么,因为我是一个拉威尔的学习者。请参阅下文: 路线 控制器您要查找的页面未找到laravel 5.5,laravel,routes,Laravel,Routes,我得到了 很抱歉,找不到您要查找的页面 关于拉威尔5.5。我肯定我错过了一些很小的东西。但我不确定这是什么,因为我是一个拉威尔的学习者。请参阅下文: 路线 控制器 public function show(Curriculumsection $curriculumsection) { // $curriculum = Curriculum::findOrFail($curriculumsection->id); return view('curriculum-sec
public function show(Curriculumsection $curriculumsection)
{
//
$curriculum = Curriculum::findOrFail($curriculumsection->id);
return view('curriculum-sections.show', ['curriculum'=>$curriculum]);
}
我还确保该页面存在于views文件夹中。在排除故障的同时,我还做了php-artisan-route:list
,这就是我得到的
编辑:
我正在从以下位置访问错误:
我认为你不需要第一条路线。您只需定义Route::resource(…)即可。Laravel处理不同的请求
问题在于您的路线为模型
课程部分定义了id
。您正在使用模型绑定,它将自动查询课程节::findOrFail(route\u id)
(在您的示例中,route\u id为1)。然后使用相同的id
查询模型课程
,使用->findOrFail(route\u id)
因此,为了使此路由返回404以外的任何内容,您必须在数据库中有一个id为1的课程节
记录和一个id为1的课程
记录
我不确定您的数据库是如何设置的,或者这两个模型是如何相互关联的,但肯定不是通过相同的id
(否则,为什么不将所有数据放在同一个表中)
这样做更有意义(直接绑定课程
模型):
这会将课程
模型绑定到路由,并自动获取传递了id的路由
或者类似于您的用例,但它假设您在课程部分
模型上有一个名为课程()
的工作关系:
public function show(Curriculumsection $curriculumsection)
{
$curriculum = $curriculumsection->curriculum;
return view('curriculum-sections.show', ['curriculum'=>$curriculum]);
}
您访问的URL是什么导致出现此错误?@LionelChan更新了问题您的URL中的ID在哪里?@JonasStaudenmeir我更新了问题。
public function show(Curriculum $curriculum)
{
return view('curriculum-sections.show', ['curriculum'=>$curriculum]);
}
public function show(Curriculumsection $curriculumsection)
{
$curriculum = $curriculumsection->curriculum;
return view('curriculum-sections.show', ['curriculum'=>$curriculum]);
}