Meskipun jawaban saat ini menjawab pertanyaan OP, saya ingin menambahkan lebih detail.
Saya memahami OP tidak ingin memeriksa peran, tetapi saya memasukkannya sehingga pengguna SO lain dapat menyalin dan menempelkannya di masa mendatang. - setiap kali saya google ini, saya berakhir di sini!
Sumber Doc Symfony:
Periksa apakah ada pengguna yang masuk (terlepas dari perannya)
Seperti yang dijawab, Anda dapat menggunakan app.user
untuk memeriksa apakah ada pengguna yang masuk.
{% if app.user %}
# user is logged in (any and all users, regardless of ROLE_*)
{% elseif not app.user %}
# user is not logged in (note the `not` in the `elseif` statement)
{% endif %}
Memeriksa status otentikasi
Anda dapat menggunakan is_granted()
metode ini untuk memeriksa ROLES
, (Di bawah ini adalah semua peran yang diberikan oleh symfony, Anda juga dapat memiliki peran Anda sendiri (selengkapnya di bawah) )
{% if is_granted('IS_AUTHENTICATED_FULLY') %}
# This user entered their credentials THIS session
{% elseif is_granted('IS_AUTHENTICATED_REMEMBERED') %}
# User logged in via a cookie (ie: Auth again before doing sensitive things)
{% elseif is_granted('IS_AUTHENTICATED_ANONYMOUSLY') %}
# This is a `guest` or anonymous user
{% endif %}
dari dokumen:
IS_AUTHENTICATED_ANONYMOUSLY - secara otomatis diberikan kepada pengguna yang berada di bagian situs yang dilindungi firewall tetapi belum benar-benar masuk. Ini hanya mungkin jika akses anonim telah diizinkan.
IS_AUTHENTICATED_REMEMBERED - secara otomatis ditetapkan ke pengguna yang diautentikasi melalui cookie ingat saya.
IS_AUTHENTICATED_FULLY - secara otomatis ditetapkan ke pengguna yang telah memberikan detail login mereka selama sesi saat ini.
Memeriksa Peran
Anda juga dapat menggunakan is_granted()
untuk memeriksa peran.
Dengan asumsi kita memiliki 3 peran ( ROLE_SUPER_ADMIN
, ROLE_ADMIN
, & ROLE_USER
)
{% if is_granted('ROLE_SUPER_ADMIN') -%}
# You're `ROLE_SUPER_ADMIN`
{% elseif is_granted('ROLE_ADMIN') -%}
# You're `ROLE_ADMIN`
{% elseif is_granted('ROLE_USER') -%}
# You're `ROLE_USER`
{% else %}
# You're a `nobody` ;P
{%- endif %}
Melakukan hal di atas di dalam pengontrol
Lihat jawaban berikut: Bagaimana cara memeriksa apakah pengguna login di Symfony2 di dalam pengontrol?
{% if not app.user %}