Laravel输出相关标签

时间:2016-04-28 21:25:44

标签: php laravel eloquent associations laravel-5.1

我在Laravel 5.1中有一个应用程序,我的应用程序允许用户添加一篇文章并选择与该文章相关的一些类别。

我保存了关联表中文章之间的关系,现在我想在用户的文章页面上输出用户提交的所有文章,但是在标题的一侧显示文章所在的类别。

文章页面将列出所有文章,因此列表必须是唯一的。

我的控制器:

public function index()
    {
        $articles = DB::table('articles')
                    ->leftjoin('w_relations','w_relations.article_id','=','articles.id')
                    ->leftjoin('articlecategories','articlecategories.id','=','w_relations.type_id')
                    ->where('articles.comp_id',Auth::user()->comp_id)->get();

        return view('advertiser/workshops', compact('workshops'));
    } 

我的观点

<ul>
@foreach($articles as $a)
    <li>{{ $a->article_name }} | {{ $a->category_name }}</li>
@endforeach
</ul>

我认为上面会输出

Article 1 | History, Category, Category2

但我得

Article 1 | History Article 
1 | Category Article 
1 | Category2

我可以看到我出错的地方,但我不知道如何修复查询?

1 个答案:

答案 0 :(得分:0)

以下是您问题的快速解决方案,

  1. 保留查询
  2. 操纵输出
  3. 那么我的观点会是这样的:

    wget

    我确信你可以通过利用 Laravel's Eloquent ORM

    来获得更优雅的方法