2017-09-25 33 views
0

でピボットテーブル内のすべての値を返すためにどのように私は が のarticle_idビューでそれらのすべてを取得する方法 はLaravel 5.4

updated_atの のcreated_atをACCOUNT_IDから成り、ピボットテーブルを得ました。私はどのように取得するために思っていMVC

@foreach($accountsarticles as $article) 
    <tr> 
     <td>{{$article->created_at}}</td> 
     <td>{{$article->updated_at}}</td> 
     <td>{{$article->account_id}}</td> 
     <td>{{$article->article_id}}</td> 
    </tr> 
@endforeach 

を使用せずに、このようにそれを取得し、私は2モデルのアカウントと記事

class Account extends Model 
{ 
    public function articles() 
    { 
     return $this->belongsToMany('App\Article','accountsarticles')->withPivot('account_id','article_id')->withTimestamps(); 
    } 
} 

class Article extends Model 
{ 
    public function accounts() 
    { 
     return $this->belongsToMany('App\Account','accountsarticles')->withPivot('account_id','article_id')->withTimestamps(); 
    } 
} 

を持っており、また、私は今のところ、この

class AccountsArticlesController extends Controller 
{ 
    public function index() 
    { 
     /*If i use this 1 i can get all of column data*/ 
     $accountsarticles=DB::table('accountsarticles')->get(); 

     /*If i use this 1 i only get created_at and updated_at*/ 
     $acc = Account::all(); 
     return view('accountsarticles.index',['accountsarticles'=>$accountsarticles]); 
    } 
} 

のようなコントローラーを持っていますそのピボットのすべての列は、ビューが返されたときにその列のすべてのデータを表示できます。あなたのケースでは、次の構文$model->pivot->field_name

を使用して

答えて

0

、それができるでしょう:

//to fetch account id 
$article->pivot->account_id 

//to fetch article id 
$article->pivot->article_id 
+0

私はすでにそれを試してみたが、それは私を与える「非オブジェクトのプロパティを取得しようとすると、」 – Student

+0

あなたはありませんあなたのビューでモデルのコレクションを送信します。 '$ accountsarticles = DB :: table( 'accountsarticles') - > get()'というエラーが出ているのは、 'DB'を使ってテーブル名からデータを取り出すことです。 –

+0

@Studentは '$ acc = Account :: all()'データをビューに送ります。 –