2015-10-26 12 views
5

Ich habe fünf benutzerdefinierte Wähler in meiner Anwendung und verwenden Sie die Strategie "Konsens".Symfony2 wie Standard-Wähler zu deaktivieren?

Manchmal funktionieren meine Wähler nicht richtig und nach dem Debuggen habe ich den Grund gefunden.

Der Standard Symfony RoleHierarchyVoter liefert immer "1", also Summe von "gewährt" Ergebnisse gleich Ergebnisse Summe von "leugnen". Also muss ich diesen Wähler deaktivieren, weil ich keine Rollenhierarchie verwende.

1) Wie kann ich Voter in Config deaktivieren?

2) Gibt es eine andere Lösung für dieses Problem?

Vielen Dank für jede Hilfe!

AKTUALISIERT.

Also habe ich eigene RoleHierarchyVoter erstellt, die immer false zurückgeben. Dieser Voter ersetzt Standard-Wähler, aber ich bin mir nicht sicher, ob diese Lösung der wahre Weg ist. Vielleicht irgendwelche anderen Lösungen?

+1

Sie können in Compiler-Pässe http://symfony.com/doc/current/cookbook/service_container/compiler_passes.html nachsehen, um den Dienst vollständig zu entfernen. Scheint jedoch wie ein seltsames Standardverhalten. – Cerad

+0

@Cerad sagen Sie mir bitte, kann der Grund für dieses Problem sein, dass ich FOSUserBundle installiert habe? –

+0

Weiß nicht. Ich habe die Konsens-Strategie nicht umgesetzt. Ich weiß nur, dass Sie einen Pass verwenden können, um Servicedefinitionen zu ändern. Und ich bleibe weit weg von FOSUserBundle. – Cerad

Antwort