I ont les tableaux suivantsLaravel 5. * - Eloquent Beaucoup de nombreuses relations
USERS = username | email | name
FOLLOWERS = user_id | follower_id
Lorsqu'un connecté utilisateur clique sur « suivre » mon code sauve sa carte d'identité à l'intérieur followers.follower_id
, et l'identifiant de l'utilisateur qui il veut suivre est enregistré à l'intérieur followers.user_id
.
Pour voir combien de disciples un utilisateur et le nombre d'utilisateurs d'un utilisateur suit j'utilise:
$followers = Follower::where('user_id', $user->id)->count();
$following = Follower::where('follower_id', $user->id)->count();
Cela fonctionne bien, mais je voudrais montrer des informations sur les adeptes d'un utilisateur. J'ai essayé ce qui suit:
$first_follower = $followers[0]->user->username;
Mais il retourne l'utilisateur suivi pas le suiveur.
Je me demande comment je peux obtenir des informations sur le suiveur
Modèle utilisateur
protected $fillable = ['username','email','name'];
public function follow() {
return $this->hasMany('Shop\Follower');
}
Suiveur Modèle
protected $fillable = ['user_id','follower_id'];
public function user() {
return $this->belongsTo('Shop\User');
}
vous devriez utiliser plusieurs à plusieurs relations pour surmonter cette –