SonataAdminBundle ACL-Verwendung in configureFormFields

8

Ich habe SonataAdminBundle, SonataUserBundle und FOSUserBundle sowie CoopTilleulsAclSonataAdminExtensionBundle installiert, während ich die ACL im SonataAdminBundle verwende.

Die Einträge werden von den Eigentümern gefiltert und alles ist in Ordnung. Kunde A kann nur seine Artikel sehen, Kunde b auch nur seine. Aber wenn ich ein neues Objekt erstelle, kann ich auch Artikel anderer Kunden sehen.

Nehmen wir an, ein Kunde kann Gruppen erstellen, mit denen Produkte zugeordnet werden. Dies geschieht beim Erstellen eines Produkts als Dropdown-Liste (Viele-zu-eins-Beziehung in der Produktansicht). Aber ich kann auch Gruppen sehen, die von einem anderen Kunden erstellt wurden.

Wie kann ich das filtern? Ich denke, ich muss in der ProductsAdmin.php filtern. Oder muss es in der ProductsRepository.php passieren? Ich kann bis jetzt keine Hinweise in den Dokumenten finden und würde jede Art von Hinweis oder Link schätzen, wo ich Informationen dafür finden kann.

    
Michael 07.10.2016, 08:19
quelle

1 Antwort

0

Sie müssen entweder die Vorlage für Bearbeitungszweige überschreiben oder ein benutzerdefiniertes Auswahlfeld erstellen. Siehe diese Frage zum Überschreiben. Ich kenne Ihre Entity-Struktur nicht, aber der Prozess sollte wie

gehen %Vor%

Benutzerdefinierte Abfrage in der Admin-Klasse wie

auswählen %Vor%     
Filchev 26.10.2016 09:52
quelle

Tags und Links