Php 无法从视图访问laravel查询生成器结果
我无法从控制器访问此变量$post的值: 在刀片视图中:Php 无法从视图访问laravel查询生成器结果,php,laravel-5,Php,Laravel 5,我无法从控制器访问此变量$post的值: 在刀片视图中: @foreach($post as $p) <div class="col-md-3"> <div class="boxpromo"> <h4>{{ $p->title }}</h4> <p>{{ $p->post_descriptio
@foreach($post as $p)
<div class="col-md-3">
<div class="boxpromo">
<h4>{{ $p->title }}</h4>
<p>{{ $p->post_description }}</p>
<div class="price">
<div class="data">{{ $p->out_date }}</div>
<div class="cost">{{ $p->price }}</div>
</div>
</div>
</div>
@endforeach
我做错了什么?我应该能够在视图中访问查询结果中的所有值,但我不能这样做
我是否应该将控制器中的$post std对象转换为数组,然后将其返回给视图???您必须将
paginate
方法的返回值传递给视图,如下所示:
$posts = $post->paginate(5);
return view('searchVehicle.showSearchPost')->with('post', $posts);
如果您在视图中执行了
dump($p)
,您是否看到了预期的结果(在$attributes
属性中包含所需详细信息的正确对象?我什么也看不到。什么都没有发生!您是否将dump($p)
封装在大括号{dump($p)}
中?需要的不仅仅是“什么都没有发生”与…一起工作能够帮忙!:)是的。什么也没发生。我在控制器dd($post)和get中执行了此操作,但是如果使用dd($post->paginate(5)),我得到的结果是“什么都不会发生”,因为即使变量为null
,您也会在屏幕上看到null
输出。您确定您的视图加载正确吗?如果您将任何内容放在@foreach
块之外,您应该能够看到它。也许您正在编辑/加载错误的模板文件?将$post->paginate(5)保存在一个变量中,然后将该变量返回到视图works。为什么不像我那样工作?只返回$post?现在我有另一个问题…分页不起作用。使用{$posts->links()}}并在下一页进行更改时,我得到一个错误:RouteCollection.php(第251行)中的MethodNotAllowedHttpException在RouteCollection->RouteCollection.php(第238行)中的MethodNotAllowedHttpException->RouteCollection.php(第238行)中的MethodNotAllowedHttpException……使用get not POST和{$posts->appends(request()->input()->()->()->links()->解决问题:)
$posts = $post->paginate(5);
return view('searchVehicle.showSearchPost')->with('post', $posts);