kann ich den folgenden AnrufMit in_array innerhalb elequent Anruf
$userGroups = Auth::user()->getGroups();
Die oben ausgeben wird etwa wie folgt
array:10 [▼
0 => "Admin"
1 => "TeamA"
3 => "USA"
4 => "security"
9 => "Users"
]
So kann ich sehen, dass ich bin ein Mitglied von allen oben genannten Gruppen. Ich habe auch eine Client-Tabelle, und eines der Felder dieser Tabelle ist Team. Ein Beispiel Client ist wie so
#attributes: array:11 [▼
"id" => "3"
"clientName" => "Some Client"
"contactEmail" => ""
"team" => "TeamA"
"created_at" => "2016-07-04 15:08:15"
"updated_at" => "2016-07-04 15:08:15"
]
Was ich versuche, alle Kunden zu tun bekommen, die ein Team hat, den Teil der angemeldeten Benutzer Gruppen. So können Sie sehen, dass ich ein Teil von TeamA bin, deshalb möchte ich alle Clients, die einen Teamwert von TeamA haben. Ich dachte etwas entlang der Linien dieser
$clients = Client::where('team', in_array('TeamA', $userGroups))->get();
Das obige gibt eine leere Ergebnismenge zurück, aber hoffentlich zeigt es, was ich danach bin.
Wie kann ich das erreichen?
Dank
Das klingt, dass ein 'verwenden sollte -> bei()' eloquent Klausel. Schauen Sie sich die Dokumentation hier an: https://laravel.com/docs/5.1/queries#where-clauses –