2017-05-29 9 views
0

Foreachループでページを呼び出す際に問題がありました。ログインをクリックする前にOKですが、ログインしようとすると、ロードされたforeachループのhtmlタグのみ...私のHomeControllerで私はwelcomeページを呼び出す場所のコントローラーログイン後にForeach Loopを呼び出す/表示する方法

public function index() 
{ 
    return view('pages.welcome'); 
} 

を拡張します。 foreachループであるその内部。

<div class="row"> 
    <div class="col-md-8"> 
     @foreach ($posts as $post) 
      <div class="post"> 
       <h3>{{ $post->title }}</h3> 
       <p>{{ substr($post->body, 0,300) }} 
       {{ strlen($post->body) > 300 ? "..." : " " }}</p> 
     <a href="{{ url($post->slug)}}" class="btn btn-primary btn-sm">Read More...</a> 
      </div> 
     <hr> 
     @endforeach 
    </div> 
</div>  

そして、私は問題が私のルートだと思う:

Route::get('/home', '[email protected]');

+2

あなたのためだけのショートカットですビューを返す間に '$ posts'データをインデックスメソッドに渡していません。 – Webinion

答えて

0

あなたがビューに$posts変数を経過していません。

変更するには、このような何かに

public function index() 
{ 
    return view('pages.welcome'); 
} 

public function index() 
{ 
    $posts = \App\Post::all(); //Assuming your model is called "Post" in the App namespace 
    return view('pages.welcome', compact('posts')); 
} 

注:compact( '記事')は[ 'ポスト' => $投稿]

関連する問題