我有此代码:
href="{{ path('new') }}"
现在必须在本节中使用一个变量:
href="{{ path(item.ruta) }}"
但这显示了一个错误:
在渲染模板期间引发了异常 (“无法像这样的路由那样为命名路由“”生成URL 不存在。”)。
如何解决这个问题?
答案 0 :(得分:3)
似乎item.ruta
是空的,因此无法生成任何路由。
您可以指定像这样的回退{{ path(item.ruta ? item.ruta : 'new') }}
,或者如果您想停留在当前页面上,则需要执行以下描述的操作:get current url in twig template?
{% if item.ruta %}
href="{{ path(item.ruta) }}"
{% else %}
href="{{ path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')) }}"
{% endif %}
或者如果您只想使用#
,则删除path
函数调用
{% if item.ruta %}
href="{{ path(item.ruta) }}"
{% else %}
href="#"
{% endif %}