Php 缺少布局中带有链接的[Route:homepage.edit]所需的参数
我是Php 缺少布局中带有链接的[Route:homepage.edit]所需的参数,php,laravel,laravel-5,Php,Laravel,Laravel 5,我是Laravel 5.4和php的新手,我在执行路由时遇到了一些麻烦,所以我希望你能向我解释一下发生了什么事情 我正在为我未来的项目开发一个后台办公室,对于我当前的项目,我需要能够更新发送到主页的数据。页面的编辑和数据的更新现在是完全功能的,我只是有一些麻烦做布局中的链接。很确定这是个小问题,但我很难弄清楚 这是我的密码: web.php: Route::group(['prefix' => 'admin', 'middleware' => 'admin'], function(
Laravel 5.4
和php
的新手,我在执行路由时遇到了一些麻烦,所以我希望你能向我解释一下发生了什么事情
我正在为我未来的项目开发一个后台办公室,对于我当前的项目,我需要能够更新发送到主页的数据。页面的编辑和数据的更新现在是完全功能的,我只是有一些麻烦做布局中的链接。很确定这是个小问题,但我很难弄清楚
这是我的密码:
web.php:
Route::group(['prefix' => 'admin', 'middleware' => 'admin'], function()
{
Route::resource('homepage', 'Admin\HomeController');
});
家庭控制器:`
public function edit($id) {
$contentExists = Homepage::first();
$homepage = Homepage::findOrFail($id);
return view('admin/homepage/edit', compact('homepage', 'contentExists'));
}`
在布局中:
<ul class="list-unstyled">
<li>
<a href="{{ route('homepage.edit') }}">Page d'accueil</a>
</li>
</ul>
-
现在我知道我需要向路由传递一个参数,所以我喜欢这样:
<ul class="list-unstyled">
<li>
<a href="{{ route('homepage.edit', $homepage) }}">Page d'accueil</a>
</li>
</ul>
-
但是它说主页变量没有定义,我不知道在哪里可以定义这个变量,因为我在布局中,也不知道这个变量里面需要什么,他的目的是什么。。。你能帮我一下吗?路由第二个参数,必须是这样的数组,例如:
route('homepage.edit', ['id' => 2])
我认为主页没有返回变量,因为您使用的是Homepage::findorfail($id),所以如果它不存在,if将失败,并且不会传递到视图。但这是在HomeController中,在主页视图布局中的链接上传递的变量,如果您只是尝试获取链接,而不是使用
route(“”,”)
尝试使用URL::route()
和相关参数,则控制器不会处理此视图。请使用另一种方法,尽管这可能不是最好的!谢谢你的帮助^^我看得更清楚了!如何使其动态化,以便执行['id'=>$homepage->id]?找到了它,尽管我认为这不是最好的方法,但我打开了blade@php并定义了homepage变量,该变量等于从模型中获得的数据,然后在数组中调用了id!感谢您的帮助:)在$homepage中应该是一个结果,而不是雄辩的集合。您可以尝试此命令['id'=>$homepage->first()->id]