Aux prises avec des relations - Utilisation Laravel 5.4, j'ai trois tablesLaravel - inscriptions Nombre statut par événement
événement
- id
- Nom
- autres champs ..
enregistrement
- id
- EVENT_ID
- status_id
- autres champs ...
état
- id
- Nom
- autres champs ...
Statut Modèle
public function registrations()
{
return $this->hasMany(Registration::class);
}
Modèle événement
public function registrations()
{
return $this->hasMany(Registration::class);
}
Modèle d'enregistrement
public function statuses()
{
return $this->belongsTo(Status::class, 'status_id');
}
public function events()
{
return $this->belongsTo(Event::class, 'event_id');
}
et mon EventsController ressemble à ceci
public function findRegistrations($id)
{
$viewEvent = Event::find($id)->registrations;
return view('events.details', compact('viewEvent'));
}
j'ai juste besoin nombre le nombre de statuts que par l'événement, parce que j'ai différents statuts
- New
- Revu
- Approuvé
Rejeté
et je dois afficher chaque numéro d'état sur le modèle de la lame, par exemple
Nouveau (5)
- Commenté (9)
- approuvé (4)
- Rejeté (10)
Comment puis-je accomplir cela en utilisant Eloquent?
Comment puis-je compter le nombre de statuts selon cet événement ?? –
Si chaque enregistrement a un statut, il suffit de compter le nombre d'enregistrements, si ce n'est pas le nombre de retour ($ status) de ma fonction –
Mais le fait est que le statut peut être différent pour chacun. J'ai 4 types de statut - Nouveau, Revu, Accepté, Rejeté. J'ai besoin d'obtenir le numéro de chaque et afficher ce nombre selon l'événement –