「レイアウト」と呼ばれるコントローラーからのコードのチャックを含むレイアウトがあります
ヘッダーセクションには次のものがあります。
{% block accessinfo %} {% render "/layout/accessinfo" %} {% endblock %}
ビューファイルの内容は次のとおりです。
{% extends '::layout.html.twig' %}
{% block body %}
{% if( is_logged == 0 ) %}
Welcome, access your <a id="accessAccount" title="Access your account">here</a>.
{% else %}
Hi, <b><em> {{ is_logged_user_name }}</em></b>, <a id="doLogout" href="javascript:void;">(Logout)</a>.
<i class="icon-user"></i> <a href="{{path('account/manage')}}">Your Account</a>
{% endif %}
{% endblock %}
わかるように、path('account/manage') は「account/manage」という名前のルートを指していますが、完全修飾 URL をプロジェクトに返していません。
戻り値:
http://localhost.project/account/manage
どこにあるべきか:
http://localhost.project/web/app_dev.php/account/manage
注:テンプレート ファイルのあちこちに path() があり、魅力的に機能します。
重要:アクション メソッド内で REQUEST URI を呼び出すと、次のことがわかりました。
$this->get('request')->server->get('REQUEST_URI')
PHP は、レンダリングによって呼び出された URL を返します。この場合は次のとおりです。
/layout/accessinfo