Подтвердить что ты не робот

В чем разница между "url" и "path" в symfony2.3

В документе говорится

{# src/Acme/ArticleBundle/Resources/views/Article/recentList.html.twig #}
{% for article in articles %}
    <a href="{{ path('article_show', {'slug': article.slug}) }}">
        {{ article.title }}
    </a>
{% endfor %}

также, может использовать 'url' следующим образом:

<a href="{{ url('_welcome') }}">Home</a>

это смутило меня в чем разница между использованием "url" и "path"?

4b9b3361

Ответ 1

Они очень похожи.

путь()

Создает относительный/абсолютный путь:

path('contact') будет генерировать /contact

URL()

Создает код-относительный/абсолютный URL, то есть домен + путь

url('contact') будет генерировать http://example.org/contact

Стиль url() полезен при использовании междоменного ajax или создания сообщений электронной почты, поскольку имя хоста не будет одинаковым.

Посмотрите на код https://github.com/symfony/symfony/blob/master/src/Symfony/Bridge/Twig/Extension/RoutingExtension.php для получения дополнительной информации

Ответ 2

url Функция Twig генерирует абсолютный путь путь Функция Twig генерирует/связанный URL

Пример: http://sf2sandbox.local с AcmeDemoBundle

{{ path('_welcome') }} produce /
{{ url('_welcome') }} produce http://sf2sandbox.local/