Browse Source

使用模型关联替代join获取后台文章列表

baijunyao 7 years ago
parent
commit
e5340839bd

+ 5 - 3
app/Http/Controllers/Admin/ArticleController.php

@@ -17,12 +17,14 @@ class ArticleController extends Controller
     /**
      * Display a listing of the resource.
      *
-     * @param Article $article
      * @return \Illuminate\Http\Response
      */
-    public function index(Article $article)
+    public function index()
     {
-        $article = $article->getAdminList();
+        $article = Article::with('category')
+            ->orderBy('created_at', 'desc')
+            ->withTrashed()
+            ->paginate(15);
         $assign = compact('article');
         return view('admin.article.index', $assign);
     }

+ 0 - 16
app/Models/Article.php

@@ -84,22 +84,6 @@ class Article extends Base
     }
 
     /**
-     * 后台文章列表
-     *
-     * @return mixed
-     */
-    public function getAdminList()
-    {
-        $data = $this
-            ->select('articles.*', 'c.name as category_name')
-            ->join('categories as c', 'articles.category_id', 'c.id')
-            ->orderBy('created_at', 'desc')
-            ->withTrashed()
-            ->paginate(15);
-        return $data;
-    }
-
-    /**
      * 获取前台文章列表
      *
      * @return mixed

+ 1 - 1
resources/views/admin/article/index.blade.php

@@ -30,7 +30,7 @@
         @foreach($article as $k => $v)
             <tr>
                 <td>{{ $v->id }}</td>
-                <td>{{ $v->category_name }}</td>
+                <td>{{ $v->category->name }}</td>
                 <td>
                     <a href="{{ url('article', [$v->id]) }}" target="_blank">{{ $v->title }}</a>
                 </td>