3

我正在尝试使用该translation组件,但我无法正确获取和使用它。

当我请求 /testT 时:

namespace Codechick\Test2Bundle\Controller;

class DefaultController extends Controller
{
    /**
     * @Route("/testT")
     */
    public function testTAction(Request $req)
    {
        die(var_dump($this->get('translator')));
    }
}

我得到的是:

object(Symfony\Component\Translation\IdentityTranslator)[203]
  private 'selector' => 
    object(Symfony\Component\Translation\MessageSelector)[202]
  private 'locale' => string 'it' (length=2)

因此,没有任何内容被翻译。这是为什么?这是我的配置(我的 _dev conf 中没有覆盖):

#<root>/app/config/config.yml
framework:
    translator: { fallbacks: [it,en] }
4

1 回答 1

0

根据新闻公告,从 2.6 版本开始,翻译器组件被定义为类似服务translator.default

所以改变你的代码:

    die(var_dump($this->get('translator')));

    die(var_dump($this->get('translator.default')));

希望这有帮助

于 2015-12-17T07:15:00.783 回答