在 Symfony2 中生成不同语言环境的 url [英] Generate url with different locale in Symfony2

查看:38
本文介绍了在 Symfony2 中生成不同语言环境的 url的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个像这样重定向的控制器:

I have a controller with a redirect like this:

return $this->redirect(
        $this->generateUrl(
            'my_route', 
            array(
                'stuff1' => $stuff1,
                'stuff2' => $stuff2,  
            )
        )
    );

路由控制器为各种语言定义了路由:

The route controller has the route defined for various languages:

my_route:
    locales:  { en: "/{stuff1}/{stuff2}", es: "/{stuff1}/{stuff2}" }
    defaults: { _controller: myBundle:Controller:my_route}

它总是重定向到en".如何强制将其重定向到es"?

It always redirects to 'en'. How can I force to redirect it to 'es'?

推荐答案

使用:

return $this->redirect(
    $this->generateUrl(
        'my_route', 
        array(
            'stuff1' => $stuff1,
            'stuff2' => $stuff2,
            '_locale' => 'es',
        )
    )
);

这篇关于在 Symfony2 中生成不同语言环境的 url的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆