問題タブ [python-babel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
947 参照

flask - デフォルトのパラメーターの url_for に渡す方法は?

私は多言語ウェブサイトを開発しています。ページには次のような URI があります。

そしてjinja2テンプレートで私は書きます:

すべてのurl_for呼び出しで lang_code=g.current_lang を記述する必要があります。

暗黙的に渡すことは可能lang_code=g.current_langですか? url_forそして書くだけ {{ url_for('about') }}

私のルーターは次のようになります。

0 投票する
2 に答える
2290 参照

python - なぜ1時間が間違っているのですか?

時刻は、ストックホルム (ヨーロッパ) で 15:0x です。しかし、私はローカライズされた時間を1時間間違えています:

間違いは何ですか?

0 投票する
1 に答える
184 参照

localization - Jinja2 が翻訳を認識しない

Pelican でサイトを構築しており、テンプレートのローカライズに関するこのガイドに従っています。

ただし、ペリカンの出力は"ERROR: Cannot find translations for language 'en' in 'translations/' with domain 'flobin'. Installing NullTranslations."、ペリカン コマンドを実行すると次のように表示されます (詳細はこちら)。

これは左側の私のディレクトリ構造で、正しい構造だと思います。

Babelをインストールしました。

何がうまくいかないのですか?

0 投票する
1 に答える
872 参照

python - Jinja の {% trans %} を拡張して JavaScript 変数を使用する

trans変数をコンテキストからの値としてではなく、(コンテキストを使用せずに) html としてレンダリングすることにより、 の動作を拡張したいと思います。私の目標は、JavaScript を使用してクライアントにこれらの変数を入力できるようにすることです。

Jinja は、この種のカスタマイズを大幅に許可していないようです。または、適切なフックを見つけることができないだけです。

これが私が達成したいことです:

これは次のようにレンダリングする必要があります。

もちろん、通常の{% trans %}ディレクティブを使用して自分の html コードを に渡すこともできますtemplate.render(html_code_params)が、その場合、避けたいテンプレートとレンダリング コードでそれらを定義する必要があります。

これまでに得たもの (それほど多くはありません) は、新しいetransタグと、提供するあらゆるグッズを使用できる機能を可能InternationalizationExtensionにします。

より多くのメソッドをオーバーロードしてもかまいません (ただし、上記の理由はおそらくアップストリームで修正する必要があります)。

コードをステップ実行することは、非常に興味深い冒険です。しかし、私は問題を抱えており、誰かがアドバイスをくれるかどうか興味があります.

私が見る問題は、コンパイル中に関数 context.resolve() がコンパイルされたコードに焼き付けられることです。jinja2.jinja2.compiler.CodeGeneratorここで異なる処理を実際に許可することはありません (間違っている場合は修正してください)。理想的には、(変数用に) 別のノードを定義し、このノードがコンパイル中に処理される方法を処理しますが、これがどのように可能かわかりません。私は解決策としてこれに集中しすぎているかもしれないので、誰かが代替案を提供できるかもしれません。

0 投票する
1 に答える
408 参照

python - Jinja2 でのバベルとのリンクの使用

現在、Flask と Jinja2 を Babel と組み合わせて使用​​しています。これまでのところ、すべてがうまく機能しています。

私が直面している唯一の問題は、翻訳されたテキストでリンクを使用する場合です。HTML に以下があるとします。

これをbabelと組み合わせてどのように使用しますか?

私は次のコードを考えていましたが、翻訳された言語で単語の順序が同じでない場合に問題が発生します。

もう 1 つのアイデアは、HTML 全体を翻訳対象の文字列に入れることでしたが、文字列エスケープを使用できなくなりました。

これを行うための好ましい方法は何ですか?

0 投票する
1 に答える
167 参照

python - Jinja2 を使用した Pyramid プロジェクトでの Babel の使用

Jinja2 を使用する Pyramid プロジェクトがあります。setup.py に以下を追加して、Babel を使用しようとしています。

そして、私はsetup.cfgファイルを持っています

しかし、私が走るとき

python setup.py extract_messages

テンプレート ファイル (.html) からメッセージを抽出しようとしていることがわかりますが、_ も {% trans %} も認識しないため、.pot ファイルは空です。

何か特別なことをする必要がありますか?