3

私はSymfony2が初めてです。翻訳サービスを確立しようとしています。公式ドキュメントに記載されている手順に従っています。しかし、成功していません。

以下は、実行される手順です

  1. 「symfony/app/config/config.yml」翻訳サービスで、ロケールを定義して"#translator:{ fallback: %locale% }"

  2. 定義された'symfony/app/config/parameters.yml'ロケール パラメータで"locale:de"

  3. 'src/MyBundle/translateBundle/Resources/translations/messages.de.xlf'作成されます

    <?xml version="1.0"?>
    <xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="1">
                <source>Symfony2 is great</source>
                <target>J'aime Symfony2</target>
            </trans-unit>
        </body>
    </file>
    </xliff>    
    

このコーディングで、次のコードの実行で「J'aime Symfony2」が得られることを願っています。

<?php

namespace MyDays\translateBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;

class DefaultController extends Controller {
    public function indexAction() {
        $t = $this->get ( 'translator' )->trans ( 'Symfony2 is great' );        
        return new Response ( $t );
    }
}

しかし、「Symfony2 は素晴らしい」として、まだ元のテキストを取得しています! ドキュメントに記載されている手順以外に何かしなければならないことはありますか?

4

1 に答える 1

8

#で以前translator...に削除しましたconfig.ymlか?

また、新しい翻訳ファイルを追加した後、キャッシュをクリアする必要があります。

于 2012-10-24T10:56:17.667 に答える