Bonjour,
Pour mon utilisation perso du logiciel, j'ai ajouté une fonctionnalité "Abonnement".
Côté serveur, j'ai une relation 'hasMany' entre une table "Users" et "Subscriptions".
J'ai une fonction dans mon modèle "Users" appelée 'getAllUsers' me permettant de donner tous les users.
Pour le moment j'obtiens une liste de tous les users avec leurs attributs (id, name, pseudo, email,...) ainsi qu'un array "subscriptions" ( en utilisant un 'appends' dans mon modèle "Users") avec tous les attributs relatifs au modèle "Subscriptions" (id, type, startDate, endDate,...)
Ma question est simple: comment puis-je filtrer getAllUsers selon un attribut de "subscriptions", par exemple 'type'.
J'ai tenté dans ma fonction :
$users = static::whereHas('subscriptions', function($query) use($type) {
$query->where('type', $type);
})
->get()
->toArray()
Mais cela me retourne tous les users mais sans filtrer par type dans l'array 'subscriptions'...
J'espère être clair, ce n'est pas simple à expliquer...
Merci par avance,
Alexandre.