2016-12-27 30 views
0

私はlaravelを使ってその仕事をしていますが、フロントエンドでも1つの問題を除いてその仕事を見ています。私は4つの記事を持っています。記事の丈夫なスラグは別のURLです。スラグが正しく動作しない

コントローラコード

public function singleArticle($slug){ 

    Article::where('slug', '=', $slug)->increment('viewed'); 




    $navi['country'] = Country::get(); 
    $navi['genre'] = Genre::get(); 


    $articles = Article::orderBy('created_at','desc')->limit(3)->get(); 
    $latest_movies = Movie::where('type', '=', 'movie')->orderBy('created_at','desc')->limit(4)->get(); 
    $latest_tv = Movie::where('type', '=', 'tv')->orderBy('created_at','desc')->limit(4)->get(); 
    $most_viewed_movies = Movie::where('type', '=', 'movie')->orderBy('viewed','desc')->limit(3)->get(); 
    $most_viewed_tv = Movie::where('type', '=', 'tv')->orderBy('viewed','desc')->limit(4)->get(); 

    $most_viewed_article = Article::orderBy('created_at','desc')->orderBy('viewed','desc')->limit(4)->get(); 



    $article = Article::where('slug', '=', $slug)->first(); 

とビューフロントコード下にルーティングするため

@if(count($articles) > 0) 
      <div class="articles_list"> 
       @foreach($articles as $article) 
       <div class="col-md-6"> 
        <div class="article_item row"> 
         <div class="article_info"> 
          @if($article->thumb) 
          <a href="{{route('articles.single',$article->slug)}}"><img class="img-responsive" src="{{ url(Image::url($article->thumb,350,200,array('crop'))) }}" alt="{{$article->title}}"> 
          @else 
          {{-- <img class="img-responsive" src="{{ url(Image::url($article->thumb,250,250,array('crop'))) }}" alt="{{$article->title}}"> --}} 
          @endif 
          <div class="artice_title"><h3>{{$article->title}}</h3></div> 
          <div class="article_time">         
          <span class="author">By Admin</span> 
          <span class="cateogry">Category</span> 
          <span class="time">{{date('F d, Y', strtotime($article->created_at))}} </a></span></div> 
          <!--<div class="article_descr"> 
           <?php echo mb_substr($article->content, 0, 200) . ' ...'; ?> 
          </div> 
         <a class="btn btn-default read_more" href="{{route('articles.single',$article->id)}}">Read more</a> --> 
         </div> 
         </div> 
        </div> 
       @endforeach 
      </div> 
      <div class="clearfix"></div> 
      <div class="text-center col-xs-12"> 
       {{$articles->links()}} 
      </div> 
     @else 
     <div class="col-xs-12"> 
      Nothing found in there 
     </div> 
     @endif 

を終了するため:おかげで前

// Category 
Route::get('category/{slug}', ['as' => 'category.index', 'uses' => '[email protected]']); 

// Articles 
Route::get('articles', ['as' => 'articles.index', 'uses' => '[email protected]']); 

// Specific article 
Route::get('articles/{slug}', ['as' => 'articles.single', 'uses' => '[email protected]']); 

+0

コードの書式設定は常に質問しながら重要なことです。 –

答えて

1

命名規則の問題です。変数には異なる名前を選択してください。

  1. @foreach($articles as **$article**).これは$ article変数を持つビューです。

    1. **$article** = Article::where('slug', '=', $slug)->first();コントローラ内にあります。だからそれは紛争のせいだ。
+0

私の助けてくれてありがとう:D –