Ich möchte attach()
auf einem gefilterten Builder Ergebnis verwenden:Wie benutzt man Laravels attach() für gefilterte Abfrageergebnisse?
$users = User::whereIn('type', array(1, 2))->get();
$usersType_1 = $users->filter(function($item) {
return $item->type == 1;
});
$usersType_2 = $users->filter(function($item) {
return $item->type == 2;
});
$usersType_1->role()->attach(3);
$usersType_2->role()->attach(4);
Also, ich brauche die role
zu befestigen basierend auf dem Benutzer type
. Die role()
Methode basiert auf das User
Modell angegeben
Der attach()
Teil aus dem obigen Code führt den folgenden Fehler: Methode Rolle() nicht existieren - was ich davon ausgehen, geschieht, weil filter()
eine Sammlung zurück.
Gibt es eine funktionierende Möglichkeit, Pivot-Einträge an gefilterten Builder-Ergebnissen anzuhängen? Oder muss ich 2 separate Abfragen ausführen und attach()
auf ihnen jeweils ausführen?
Rollen() Funktion nicht existiert extrahieren Sie dieses Modell in den Controller – Sona
Alle in einem anderen Modell geschieht. Die Methode 'role()' wird im 'User'-Modell angegeben. – lesssugar
Rollenfunktion gibt es im Benutzermodell. – Sona