mit Beziehungen Struggling - Mit Laravel 5.4, ich habe drei TabellenLaravel - Anzahl Registrierungen Status pro Ereignis
Ereignis
- id
- Namen
- andere Bereiche ..
Registrierung
- id
- event_id
- status_id
- anderen Bereichen ...
Status
- id
- Name
- andere Bereiche ...
Statusmodell
public function registrations()
{
return $this->hasMany(Registration::class);
}
Ereignismodell
public function registrations()
{
return $this->hasMany(Registration::class);
}
Registrierung Modell
public function statuses()
{
return $this->belongsTo(Status::class, 'status_id');
}
public function events()
{
return $this->belongsTo(Event::class, 'event_id');
}
und meine EventsController sieht aus wie dieses
public function findRegistrations($id)
{
$viewEvent = Event::find($id)->registrations;
return view('events.details', compact('viewEvent'));
}
ich Zahl brauchen nur die Anzahl der Zustände gemäß dem Ereignis, weil ich
- New verschiedene Status haben
- Bewertet
- Zugelassen
Abgelehnt
und ich brauche jede Statusnummer auf Blade-Vorlage anzuzeigen, zum Beispiel
Neu (5)
- Bewertet (9)
- Approved (4)
- Abgelehnt (10)
Wie erreiche ich das mit Eloquent?
Wie zähle ich die Anzahl der Status nach diesem Ereignis? –
Wenn jede Registrierung einen Status hat, dann zählen Sie einfach die Anzahl der Registrierungen, wenn nicht die Anzahl der Rückgaben ($ status) von meiner Funktion –
Aber die Sache ist, Status kann für jeden unterschiedlich sein. Ich habe 4 Arten von Status - Neu, Überprüft, Angenommen, Abgelehnt. Ich muss die Nummer von jedem erhalten und diese Zahl gemäß dem Ereignis anzeigen –