2017-08-22 5 views
0

でローカライズタックル、私はロケールと翻訳されたテキストと辞書のリストを持っているいくつかのフィールドを持っている:JSONファイルでGraphql

値キーの2つのキーがある他のフィールドがあります
description_localized: [ 
    { 
     locale: "en-UK", 
     value: "Read along" 
    }, 
{ 
     locale: "de-DE", 
     value: "Lesen und" 
    }, 
{ 
     locale: "fr-FR", 
     value: "Lis avec" 
    }, 
] 

path_localized: [ 
    { 
     locale: "de-DE", 
     value: "{"identifier"=>"", "value"=>"http://path_6987.path"}" 
    }, 
    { 
     locale: "es-ES", 
     value: "{"identifier"=>"", "value"=>"http://path_4685.path"}" 
    }, 

私はすでに、これらのフィールドをつかむスキーマを作成したが、代わりに全体の辞書を引いての、Graphqlに、私は私が唯一の言語ロケールを指定するクエリを作成することができるようにする必要があります私は(したいです例えばfr-FR)、それはその1つの言語の変換された値を取り出すだけです(fr-F R)。私はすべてのローカライズされた言語の配列を取得したくないので、これは非常に課税され、クエリごとに読み込むのに時間がかかります。

私はこれをどのように達成することができるでしょうか?たぶん私がパラメータとして言語を渡すリゾルバを通して?しかし、言語はどこで定義されますか? en_UK、en-UK、UK、en_UK_CO ...クエリされた言語が見つからない場合、どのようにフォールバックを定義できますか?

ガイダンスをいただければ幸いです。

ありがとうございます!

答えて

0

Node.jsで作業しているスタックは何ですか?もしそうなら、https://github.com/kriasoft/nodejs-api-starter ..ここでローカライゼーションの例を見つけることができます。 "i18next"モジュールを使用してユーザの言語を検出し、デフォルトの言語にフォールバックし、コンテキスト変数として "lng"文字列を渡し、 resolve()メソッドを使用します。 src/app.js,src/Context.jsを参照してください。

+0

私はFlaskでPythonを使用しています。 –