2016-06-05 2 views
1

Ich habe diese irgendwo in meinem Laravel appLaravel Filter Kind Zeile in hasOne Beziehung

function result() 
{ 
    return $this->hasOne(InvestigationResult::class, 'assignment_id', 'id'); 
} 

Wenn die Instanz abgelehnt, wird ein weiterer Bericht gemacht und das Ergebnis des Modells soll die letzte Instanz von InvestigationResult aber Laravel sein nimmt die erste Instanz.

Wie kann ich Bedingungen für eine Beziehung angeben? Wenn es möglich ist, möchte ich komplexe Abfragen vornehmen, um Zeilen zu filtern, die für die Beziehung infrage kommen.

Antwort

1

Sie können eine beliebige der üblichen Eloquent-Datenbankfunktionen zu einer Beziehung hinzufügen.

Zum Beispiel, wenn Sie nur eine Zeile zurückgeben möchten, wenn rejected ist false:

return $this->hasOne(InvestigationResult::class, 'assignment_id', 'id') 
    ->whereRejected(false);