Ich habe 2 Modelle, eine ServiceInstances
Das gehört zu einem ServiceTypes
. Service-Typ bestimmt einige Dinge und unter ihnen den Dienst length
Laravel Scope basierend auf BelongsTo Beziehung
In ServiceInstances
Ich versuche, diese "Pseudo" Logik zu implementieren:
Ich brauche $ this->Servicetype() zu bekommen -> Länge, aber Beziehungsmethode schlägt fehl
public function scopeExpired($query) {
$length = $query->serviceType()->length;
return $query->where('created_at', '<', Carbon::now()->subDays($length));
}
Irgendwelche Ideen?
vielleicht '$ this-> serviceType-> Länge' - ohne Klammern – Yurich
Versuchte, dass ohne Erfolg - Alles, was ich bekommen, ist ein weiterer Fehler: '[Error] nicht definierte Eigenschaft: October \ Regen \ Database \ Builder :: $ serviceType' –
** Scopes sollten die Abfrage modifizieren, nicht ausführen. ** Sie werden wahrscheinlich einen Join in der Service-Typ-Tabelle machen und den Längenvergleich in SQL statt in PHP durchführen. – jfadich