web-dev-qa-db-fra.com

Laravel: Obtenir des données pivot pour une relation spécifique plusieurs à plusieurs

Mon modèle User a beaucoup de Target et vice versa. Maintenant, j'ai une donnée User et une donnée Target et je souhaite accéder aux données de pivot de leur relation. La colonne pivot s'appelle type

Comment puis-je atteindre cet objectif?

37
Strernd

Sur les relations pour User et Target, ajoutez une fonction ->withPivot('type') qui indiquera à Laravel d'inclure cette colonne. Puis, une fois Si vos résultats sont définis, vous pouvez accéder au champ avec $user->pivot->type.

Si vous ne parcourez pas une collection, mais que vous avez un utilisateur et une de leurs cibles et souhaitez le champ type, vous pouvez utiliser $target = $user->targets->find($targetId) et accéder au type à l'aide de $target->pivot->type.

Plus à http://laravel.com/docs/4.2/eloquent#working-with-pivot-tables

69
maknz