2017-10-15 1 views
0

내가 가지고 포럼 및 포럼 응답 모델 다음 데이터베이스 테이블 :에 의해 그룹을 사용하고 설득력 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 변경