php - 使用命令的 Twig 模板中的 URL 域不正确

标签 php symfony twig symfony-routing

在我的 Symfony2 项目中,我发送带有链接的电子邮件以连接到我的网站,例如

<a href="{{ url('login') }}">LOGIN</a>

当我在 Controller 中使用这个模板时,链接很好。

<a href="https://example.com/login">LOGIN</a>

但是,如果我在带有 cron 的 ContainerAwareCommand 中将此模板用于我的邮件,它看起来像

<a href="http://localhost/login">LOGIN</a>

这不好。我该怎么做才能让它发挥作用?

最佳答案

您应该全局配置请求上下文,如文档 How to Generate URLs from the Console 中所述:

you can redefine the parameters it uses as default values to change the default host (localhost) and scheme (http). You can also configure the base path if Symfony is not running in the root directory.

Note that this does not impact URLs generated via normal web requests, since those will override the defaults.

# app/config/parameters.yml
parameters:
    router.request_context.host: example.org
    router.request_context.scheme: https
    router.request_context.base_url: my/path

希望有帮助

关于php - 使用命令的 Twig 模板中的 URL 域不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44762544/

相关文章:

php - Magento 自定义左侧导航模板显示两次

oracle - Symfony2 Doctrine :schema:drop --force doesn't work

php - Twig "trans with"不工作

php - 交响乐 3.4 : RecursiveValidator or TraceableValidator?

php - Twig PHP : Incrementing and Subtracting A Value In A Foreach

javascript - Symfony2 : JavaScript doesn't work on Prod environment

php - Laravel Eloquent ORM - 嵌套语句

php - Mysql LEFT JOIN 表正确过滤原始表

php - 如何在 PHP 上使用 substr_count 计算阿拉伯语子字符串

symfony - 通过 Twig 同时使用 3 个模板