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 に答える