登录用户的不同菜单
Different menu for login user
如何根据用户是否登录来限制菜单数组中的某些路径?因为我不想要“注册”选项卡,因为用户已经登录到 Symfony。
{% block header %}
<div class="navbar navbar-inverse" role="navigation">
<div class="blockMain">
{% set mainMenu = [
{'path': 'main', 'name': 'Home' },
{'path': 'all', 'name': 'All' },
{'path': 'TEST_test', 'name': 'TEST' },
{'path': 'fos_user_profile_show', 'name': 'Profile' },
{'path': 'fos_user_security_logout','name': 'logout'}
{'path': 'fos_user_security_login', 'name': 'Login' },
{'path': 'fos_user_registration_register', 'name': 'Register' }
] %}
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
{% for item in mainMenu %}
<li{{ app.request.get('_route') == item['path'] ? ' class="active"' : '' }}>
<a href="{{ path(item['path']) }}">{{ item['name'] }}</a>
</li>
{% endfor %}
</ul>
</div><!--/.navbar-collapse -->
</div>
</div>
{% endblock %}
你可以在TWIG中查看角色:{% if is_granted("ROLE_USER") %}
{% block header %}
<div class="navbar navbar-inverse" role="navigation">
<div class="blockMain">
{% if is_granted("ROLE_USER") %}
{% set mainMenu = [
{'path': 'main', 'name': 'Home' },
{'path': 'all', 'name': 'All' },
{'path': 'TEST_test', 'name': 'TEST' },
{'path': 'fos_user_profile_show', 'name': 'Profile' },
{'path': 'fos_user_security_logout','name': 'logout'}
] %}
{% else %}
{% set mainMenu = [
{'path': 'main', 'name': 'Home' },
{'path': 'fos_user_security_login', 'name': 'Login' },
{'path': 'fos_user_registration_register', 'name': 'Register' }
] %}
{% endif %}
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
{% for item in mainMenu %}
<li{{ app.request.get('_route') == item['path'] ? ' class="active"' : '' }}>
<a href="{{ path(item['path']) }}">{{ item['name'] }}</a>
</li>
{% endfor %}
</ul>
</div><!--/.navbar-collapse -->
</div>
</div>
{% endblock %}
如何根据用户是否登录来限制菜单数组中的某些路径?因为我不想要“注册”选项卡,因为用户已经登录到 Symfony。
{% block header %}
<div class="navbar navbar-inverse" role="navigation">
<div class="blockMain">
{% set mainMenu = [
{'path': 'main', 'name': 'Home' },
{'path': 'all', 'name': 'All' },
{'path': 'TEST_test', 'name': 'TEST' },
{'path': 'fos_user_profile_show', 'name': 'Profile' },
{'path': 'fos_user_security_logout','name': 'logout'}
{'path': 'fos_user_security_login', 'name': 'Login' },
{'path': 'fos_user_registration_register', 'name': 'Register' }
] %}
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
{% for item in mainMenu %}
<li{{ app.request.get('_route') == item['path'] ? ' class="active"' : '' }}>
<a href="{{ path(item['path']) }}">{{ item['name'] }}</a>
</li>
{% endfor %}
</ul>
</div><!--/.navbar-collapse -->
</div>
</div>
{% endblock %}
你可以在TWIG中查看角色:{% if is_granted("ROLE_USER") %}
{% block header %}
<div class="navbar navbar-inverse" role="navigation">
<div class="blockMain">
{% if is_granted("ROLE_USER") %}
{% set mainMenu = [
{'path': 'main', 'name': 'Home' },
{'path': 'all', 'name': 'All' },
{'path': 'TEST_test', 'name': 'TEST' },
{'path': 'fos_user_profile_show', 'name': 'Profile' },
{'path': 'fos_user_security_logout','name': 'logout'}
] %}
{% else %}
{% set mainMenu = [
{'path': 'main', 'name': 'Home' },
{'path': 'fos_user_security_login', 'name': 'Login' },
{'path': 'fos_user_registration_register', 'name': 'Register' }
] %}
{% endif %}
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
{% for item in mainMenu %}
<li{{ app.request.get('_route') == item['path'] ? ' class="active"' : '' }}>
<a href="{{ path(item['path']) }}">{{ item['name'] }}</a>
</li>
{% endfor %}
</ul>
</div><!--/.navbar-collapse -->
</div>
</div>
{% endblock %}