亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

路由不起作用,來自控制器的變量未定義

路由不起作用,來自控制器的變量未定義

PHP
人到中年有點甜 2022-10-28 15:50:46
后控制器public function index(){  $posts=Post::all();  return view('home')->with('posts', $posts);}網頁.phpRoute::get('/', function () {  return view('welcome');});Auth::routes();Route::get('/home', 'HomeController@index')->name('home');Route::resource('posts','PostController');家@foreach($posts as $post)  <p>{{$post['content']}}</p>@endforeach我收到這個錯誤Facade\Ignition\Exceptions\ViewExceptionUndefined variable: posts (View: C:\xampp\htdocs\lts\resources\views\home.blade.php)$posts未定義在刀片模板中使變量可選。替換{{ $posts }}為{{ $posts ?? '' }}感謝大家的幫助,我可以通過添加來修復它Route::get('/home', 'PostController@index');  我很想知道為什么這個問題是首先引起的,Route:: resource('posts','PostController');應該處理它。
查看完整描述

4 回答

?
慕村225694

TA貢獻1880條經驗 獲得超4個贊

有兩種方法可以做到這一點:


第一:


如果要HomeController用于/home路由,請在 HomeController 中添加以下代碼。


家庭控制器:


public function index()

{

    $posts=Post::all();

    return view('home')->with('posts', $posts);

}

第二個


您已在'PostController' URL中使用了該resource方法,但您已使用. 所以改變你的路線是這樣的:web.phpposts/home


在web.php


Route::get('/home', 'PostController@index')->name('home');

Route::resource('posts','PostController');


查看完整回答
反對 回復 2022-10-28
?
阿波羅的戰車

TA貢獻1862條經驗 獲得超6個贊

在您的控制器中更改


public function index()

    {

      $posts=Post::all();

     return view('home')->with('posts', $posts);

    }

改變你的刀片


@foreach($posts as $post)

    {{ $post['content'] }}

@endforeach


查看完整回答
反對 回復 2022-10-28
?
神不在的星期二

TA貢獻1963條經驗 獲得超6個贊

試試這個,而不是你給的 for 循環

@foreach($posts as $post)
    {{ $post->content}}
    @endforeach


查看完整回答
反對 回復 2022-10-28
?
搖曳的薔薇

TA貢獻1793條經驗 獲得超6個贊

嘗試更換

return view('home')->with('posts', $posts);

return view('home', ['posts' => $posts]);

<p>{{$post['content']}}</p>

<p>{{ optional($post)->content }}</p>


查看完整回答
反對 回復 2022-10-28
  • 4 回答
  • 0 關注
  • 118 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號