問題タブ [chameleon]

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 投票する
2 に答える
567 参照

python - Chameleon テンプレート化: 「tal:switch」のデフォルト値

整数値の範囲を中心にスイッチ/ケース構造を構築しようとしています。言語リファレンスに記載されているように、case 式が記号の場合default、常に switch に一致します。ただし、シンボルの上にリストされているものを除くすべての場合に一致するシンボルを探しています...

シンボルを試しましたotherwiseが、どちらも機能しません。

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

javascript - テンプレート言語と ajax ウィジェット

私は ajax ウィジェットについて本当に初歩的な質問があります。これは、私が少し前に尋ねた質問の拡張です:ピラミッドとカメレオンの ajax ウィジェット

この質問とファイル account_login_widget.pt の内容を見ると、「ウィジェット」が ${username} のような構文を使用していることがわかります。これは、ページに 1 つしかないログイン ウィジェットに対しては再び機能しますが、ページに複数回存在する可能性のあるウィジェットに対してこの「ウィジェット パターン」を使用しようとすると、すべてがうまくいきません。

次に、ajax トグル ボタンを作成します。ボタンは構成可能である必要があります。ボタンのテキストは、使用されているページに応じて変更できます。また、コールバック コードも変更できる必要があります...これもページによって異なります。さらに、複数のトグル ボタンが同じページに存在できる必要があります。

2 つの質問:

  1. 私のページにレストランのリストがあり、それぞれの横に「いいね」ボタンがあるとしましょう。レストラン ID を「post」サーバー呼び出しに渡す正しい方法は何ですか (つまり、どのように変数を JavaScript ウィジェットに渡しますか?)。

  2. 同じページで、同じ ajax トグル ボタン ウィジェットを別のコンテキストで使用したいとします。たとえば、同じページに人のリストもあり、それらを「フォロー」したいとします。ボタン テキスト変数をウィジェットに渡し、ポスト サーバー呼び出しの動作を変更する正しい方法は何ですか? (つまり: 質問 1 では restaurant.like() を呼び出したいかもしれませんが、質問 2 では person.follow() を呼び出したいと思います)

ウィジェットを表示するサンプルコードを次に示します...

ありがとう!

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

python - カメレオンでベースレイアウトテンプレートを使用する

ピラミッドのドキュメントには、UXに関する優れたチュートリアルがあります。

http://docs.pylonsproject.org/projects/pyramid_tutorials/en/latest/humans/creatingux/step07/index.html

私が気づいたことの1つは、チュートリアルで、コード内で「グローバルレイアウト」を明示的に設定して渡していることです(以下を参照)。ここのドキュメントに示されているように、私は常に「load」コマンドを使用していたので、これは異常で不要だと思いました。

http://chameleon.repoze.org/docs/latest/

これは単なる個人的な好みの問題ですか、それともこのように「グローバルレイアウト」を設定して使用することには本当の利点がありますか?

チュートリアルベースビュークラス:

チュートリアルテンプレートファイル:

しかし、私のテンプレートファイルでは、次のものを使用しています。

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

python - カメレオン ZPT テンプレート

次のスニペットを含む .pt テンプレートを作成しました

私の問題は、 password_confirm フィールドが常にピラミッドフレームワークによってレンダリングされるとは限らないため、以下のエラーが表示されることです

tal:condition を使用することになっていることは理解していますが、試みていることはすべて失敗しています。テンプレートで常にレンダリングされるとは限らない変数について、私がどのように考えているかについて、誰かが私を助けてくれますか?

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

python - Pyramid Web Frameworkのカメレオンテンプレートに関する詳細なドキュメントはありますか?

ピラミッドのドキュメントには、カメレオンテンプレートの簡単な紹介しかありません。

詳細なドキュメント/チュートリアルはありますか?

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

python - カメレオンはブロックキャッシングをサポートできますか?

ピラミッドのテンプレートレンダラーとしてカメレオンを評価しています。makoでも動作するDjangoの非常に便利な機能のいくつかは、キャッシングです。

ドキュメントを見ても、グーグルですばやく検索しても、同様の機能は見つかりませんでした。

カメレオンにも同様の機能はありますか?そうでない場合、潜在的に長いテンプレートレンダリングにどのように対処できますか?

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

python - Python と Chameleon の互換バージョン

Python 2.6 の適切な Chameleon バージョンを知りたいです。また、どのバージョンが実際にどのバージョンの Chameleon に適しているかなどのテーブル構造も知りたいです。

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

python - Pyramidの複数のビューからレンダリングされたコンテンツを1つのベーステンプレートに挿入します

以下のようなことをしたいのですが。

次のルートを構成しています。

次のビュー:

基本テンプレート'templates/base.pt'があります。

私の見解では、次のコンテンツをID「content」でdivに挿入したいと思います。

上記のhome_viewfoo_viewを変更して、独自のテンプレート(home.pt、foo.pt)をbase.ptに挿入できるようにするにはどうすればよいですか?どういうわけか、 ${user_id}などのデータもbase.ptに転送する必要があります。ビューを定義するときにラッパー引数をいじっていましたが、それがどのように機能するかを理解できませんでした。

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

python - 代わりにタグ付きのPOTファイル

Pyramidプロジェクトのテンプレートファイルからテキストを翻訳しようとしています。この例のように多かれ少なかれ:http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/chameleon_i18n.html

<dynamic element>.potファイルのコメントからを削除するにはどうすればよいですか?残りのコードとそのタグを確認したいと思います。

私のカメレオンテンプレート(.pt):

私は、setup.pyで次のオプションを使用してメッセージを抽出するためにBabelとLinguaを使用しています。

そして、私の.potファイルの関連する出力は次のようになります。

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

python-3.x - python3 での Chameleon と jinja2 のインストールに問題があります

プロジェクトでpython 3を使用することにしました。easy_install ピラミッドを試したところ、ピラミッドに付属しているものの 1 つ (すなわち Chameleon) が構文エラーをスローしました。

代わりに Pyramid_Jinja2 を使用することにし、easy_install Jinja2 を試してみましたが、さらにいくつかの構文エラーが発生しました。

これらの問題に気づいた人はいますか。Chameleon テンプレートはうまくレンダリングされますが、jinja2 をまったく動作させることさえできません。pcreate -s pyramid_jinja2_starter MyProjectscaffold が存在しないというエラーを試してみました。

python3.2 は悪い考えでしたか?

私は一日中グーグルにいました。ピラミッドでpython3.2を使用しているときに何をすべきかを教えてくれるまともなチュートリアルさえ見つかりません。