2017-10-15 3 views
0

とカウント:使用してGROUP BYと私は次のデータベーステーブルにフォーラムやフォーラムの応答モデルを持っているlaravel雄弁

forum.id 

forum_response.id 
forum_response.forum_id 
forum_response.user_id 
forum_response.text 

フォーラムモデルの関係は次のとおりです。

public function responses() 
{ 
    return $this->belongsToMany(ForumResponse::class, 'forum__responses'); 
} 

とフォーラム応答の関係:

public function Forum() 
{ 
    return $this->belongsTo(Forum::class); 
} 

特定のフォーラムの固有の回答数をuser_id。私は以下を試したreturn $this->hasMany(ForumResponse::class)->groupBy('user_id')->count();しかし、これは私が予想しているよりも高い価値を返す。

答えて

0

あなたの構造が間違っていると感じます。しかし、今のところあなたの関係には誤りがあります。ただ、この

public function responses() 
{ 
    return $this->belongsToMany(ForumResponse::class, 'forum__responses'); 
} 

この

public function responses() 
{ 
    return $this->hasMany(ForumResponse::class, 'forum__responses'); 
} 

変更hasManyのにbelongsToManyを変更

関連する問題