ユーザーが 'VIEW_GEOLOC_DATA'ロールを持っているかどうか知りたいですが、twig関数is_granted()
を使って問題があります。Twig/Symfony2:is_grantedを持つ複数のロール
私はテンプレートで使用する場合:
Roles : {{ dump(app.user.getRoles()) }}
is_granted('ROLE_SUPER_ADMIN') : {{ dump(is_granted('ROLE_SUPER_ADMIN')) }}
is_granted('VIEW_GEOLOC_DATA') : {{ dump(is_granted('VIEW_GEOLOC_DATA')) }}
これは、レンダリング時に私が得るものです:
array(2) {
[0]=>
string(16) "ROLE_SUPER_ADMIN"
[1]=>
string(16) "VIEW_GEOLOC_DATA"
}
is_granted('ROLE_SUPER_ADMIN') : bool(true)
is_granted('VIEW_GEOLOC_DATA') : bool(false)
私はsymfonyのキャッシュを空にしてログアウトしようとしました。
は、私も自分のユーザの()メソッドのgetRolesから返される配列の役割の順序を切り替えることを試みた:is_granted機能のみを使用すると、処理するために、Symfony2のを期待している場合は、アカウントに配列
明瞭にするために、if/else: 'return in_array($ role、$ this-> getRoles());を追加するのではなく、in_arrayの結果を直接返す可能性があります。 –
ROLE継承のis_grantedアカウント、ユーザーが指定された役割を持っているかどうかを確認するだけでは – Gamesh