Bonjour,

Voila je rencontre un petit problème avec mon code.

Ce que je fais

J'ai une base de données avec les mangas et les utilisateurs. Avec une table qui fait la jointure mangas_user

class User extends Model implements AuthenticatableContract, CanResetPasswordContract {
    public function mangas(){
        return $this->belongsToMany('App\Mangas');
    }
class Mangas extends Model {
    public function users(){
        return $this->belongsToMany('App\Users');
    }

et j'ai une page controlleur

class MangasController extends Controller {
   public function index()
    {
        $mangas = Mangas::all();
        return view('mangas.index', compact('mangas'));
    }

Ce que je veux

Ce que je veux, c'est récuperer la liste des mangas de l'utilisateur, sauf que même avec le cours je vois pas comment je doit l'écrire dans le controlleur.

4 réponses


Shuxx62
Réponse acceptée

Tout simplement tu fait comme ca :

class MangasController extends Controller {
   public function index()
    {
        $mangas = Auth::user()->mangas->get();
        return view('mangas.index', compact('mangas'));
    }
}
//Auth::user() -> te retourne ton user -> mangas utilise la relation -> get() fini la requette

Tu veut recuperer la liste des manga de l'utilisateur connecté c'est ca ?
D'ailleur si tu veut suivre les conventions il faut que tu nomme ta table pivot manga_user il faut que du singulier.

Zekura
Auteur

Pour la table pivot, j'ai bien mis au singulier mais quand je lance la commande sur php artisan il me le met au pluriel.

Et oui je veux bien récuperer la liste de l'utilisateur connecté

Zekura
Auteur

Merci beaucoup !