2016-10-25 18 views
2

私は動的再開をしようとしています。専門知識のレベルを持つすべてのスキル 入れ子配列の結果を取得するためのlaravel 5のクエリ構造

  • グループが含まれています - - など
  • Skill_Groupsをプログラミング、フロントエンドのようなカテゴリ、バックエンドデータベースが含まれています、私はfollows-

    1. スキルとして3つのテーブルを作成したスキルを表示するには - あるスキルが複数のグループに分かれているので、私はこのテーブルを作った。たとえば、PHPはプログラミンググループのバックエンドグループにもなります。

    スキル

    enter image description here

    グループ

    enter image description here

    Skill_Groups

    enter image description here

    今、ネストされたリストを持つグループとスキルを表示したいと思います。例 -

    • フロントエンド

      ⁃HTML

      ⁃CSS

    • バックエンド

      ⁃PHP

      ⁃MySQLの

    このため、私は多次元配列が必要です。この方法で結果を得るためには、laravelのクエリはどのようにすべきでしょうか?

    [この質問は重複する可能性がありますが、見つかりませんでした。もしそうなら、私に教えてください、私はそれをマージする/削除します。]

    他の代替ソリューションは、それがある場合もあります。あなたがビューでコントローラ

    $groups = Group::with('skills')->get(); 
    

    に関係

    public function skills() 
    { 
        return $this->belongsToMany(Skill::class, 'skill_groups'); 
    } 
    

    を追加することができますGroupモデルで

  • +0

    これはhttps://laravel.com/docs多くの関係に多くのです/5.3/eloquent-relationships#many-to-many –

    答えて

    2

    @foreach($groups as $group) 
        {{ $group->name }} 
    
        @foreach($group->skills as $skill) 
         {{ $skill->name }} 
        @endforeach 
    @endforeach 
    
    関連する問題