Besoin d'aide ?

Nombre d'item dans une base par userid

Avatar de BROSSARDPascal
BROSSARDPascal

Bonjour à tous, J'espère que tout va bien de votre coté. Je suis débutant dans Laravel 8. Mon controleur sélectionne les ruchers de l'utilisateur connecté (c'est une application pour gérer ses ruches )

    public function index()
    {  
        $ruchers = Ruchers::where('userid', Auth::user()->id)->get();
        return view('ruchers.index', [
            'ruchers'=> $ruchers, 
        ]);
    }

Avec un Foreach j'affiche les ruchers .

foreach ($ruchers as $rucher) 
{{$rucher->name}} 

Je souhaite afficher en entête le nombre de $rucher de l'utilisateur . Merci pour votre aide ! Pascal

Posté il y a 2 mois
Avatar de bestmomo
bestmomo

Salut,

Tu peux faire comme ça :

$ruchers = Ruchers::selectRaw(' ici les colonnes que tu veux, COUNT(*) as count')->whereUserid(Auth::id())->get();
return view('ruchers.index', compact('ruchers'));

Mais tu n'as pas une relation entre les users et les ruchers ? Tu pourrais faire une requête plus élégante.

Posté il y a 2 mois
Avatar de BROSSARDPascal
BROSSARDPascal

Merci Beaucoup pour ta réponse. Oui, il y a une relation. Je travaille dessus et je vous tiens au courant. J'apprends laravel en même temps.

Bonne journée Pascal

Posté il y a 2 mois
Avatar de nash
nash

salut,

vu la requete : $ruchers = Ruchers::where('userid', Auth::user()->id)->get();

je pense qu'un simple : {{ $ruchers->count() }} dans la vue devrais faire l'affaire.

Meme si tu possede des relations $ruchers = Ruchers::with('relation','relation',...)->where('userid', Auth::user()->id)->get(); cela ne changera pas le count de la requete de base.

Posté il y a 2 mois

Vous ne pouvez pas répondre à ce sujet.