2017-12-17 2 views
-1

가 나는 사용자가 서로에 가입하기 위해 만든 자체Laravel 5.5 모델과 관련된 모든 모델을 얻는 방법은 무엇입니까?

public function subscription() 
{ 
    return $this->belongsToMany('App\User', 'subscription', 'subscriber_id'); 
} 

와 관계가 모델 사용자 있습니다. 피벗 테이블 을 2 열 (subscriber_id, user_id)으로 만들었습니다. 따라서 사용자 프로필에서 현재 사용자가 가입 한 모든 사용자에게

$user = User::where('slug', $slug)->first(); 
$subscribed = $user->subscription; 

이 표시됩니다. 이제는 해당 사용자를 구독하는 모든 사용자를 표시하는 방법을 모르겠습니다. DB::table('subscription')->where('user_id', 1)->get();으로 시도했지만 User 모델을 반환하지 않습니다. 나는 그것이 쉬운 해결책이라는 것을 알고 있지만 나는이 하나에 정말로 붙어있다 ...

답변

0

$subscribed 컬렉션을 반복하면 해당 사용자를 구독 할 수있다.

$user = User::where('slug', $slug)->first(); 
$subscribed = $user->subscription; 

foreach ($subscribed as $subscriber) { 

    $subscriber->name; 
} 
+0

그런 다음 이미 사용자가 가입 한 모든 사용자를 얻습니다. 그 프로필에 가입 한 모든 사용자가 필요합니다. –

+0

@MilePanic 질문이 명확하지 않습니다. 더 자세히 설명해주세요. –

+0

사용자 프로필 페이지에서 좋아요. 구독 한 모든 사용자와 구독 한 모든 사용자를 표시하고 싶습니다. 필자는 프로필이 구독하는 모든 사용자의 콜렉션을 반환하는'$ user-> subscription'에 가입 한 사용자 목록을 작성한 방법을 썼습니다. 이제 해당 프로필에 가입 한 모든 사용자의 반대 목록이 필요합니다. 나는 내 문제로 더 분명 해졌기를 바랍니다. –

관련 문제