【发布时间】:2012-11-01 01:24:16
【问题描述】:
我需要控制器内部操作的完整路径,以便通过电子邮件发送。我怎样才能从我的控制器内部实现{{ path('_route') }} 之类的东西,而不是完整路径?
【问题讨论】:
标签: symfony controller
我需要控制器内部操作的完整路径,以便通过电子邮件发送。我怎样才能从我的控制器内部实现{{ path('_route') }} 之类的东西,而不是完整路径?
【问题讨论】:
标签: symfony controller
如果您想要本地路径,Juan 的回答是正确的。绝对路径(有助于通过电子邮件发送)需要额外的参数:
$url = $this->generateUrl('your_route_name', array(), true);
第三个参数表示要生成绝对路径。
如果您想在视图中使用此 URL,只需将 $url 添加到操作中的响应数组并使用它。
【讨论】:
url() 函数而不是 path()。
Symfony 3+
use Symfony\Component\Routing\Generator\UrlGeneratorInterface;
$this->generateUrl('your_route_name', array('/* your route parameters */'), UrlGeneratorInterface::ABSOLUTE_URL);
【讨论】:
尝试以下方法:
$url = $this->generateUrl('your_route_name');
【讨论】: