1

Mustache を Django アプリに統合したいと考えています。Django のテンプレート システムを Mustache に完全に置き換えるには、どのような手順を踏む必要がありますか?

render_to_response を Mustache テンプレートで適切に動作させ、コンテキスト (STATIC_URL、リクエストなど) を含むすべての適切な変数を渡したいと考えています。

4

1 に答える 1

6

render_to_response基本的に、関数を、選択したテンプレート システムを使用する独自の実装に置き換える必要があります。Django'srender_to_responseは、Django のテンプレート システムに固有のものです。この関数は、django テンプレート エンジンを使用するときに使用されるいくつかの一般的な面倒な作業をラップするだけです。それらがどのように機能するかの基本は、Django のチュートリアルで説明されています。

を使用しdjango.template.RequestContextて、設定で指定されたすべてのコンテキスト変数を取得しますTEMPLATE_CONTEXT_PROCESSORS(ここで、STATIC_URL、リクエストなどが定義されます)。辞書のように振る舞うのでRequestContext、問題なく口ひげに渡すことができるはずです。RequestContextコンストラクターでリクエスト オブジェクトを受け取ります。

最後に、適切なHttpResponseオブジェクトを返すことを忘れないでください。

私は段落のファンではないので:

  1. RequestContext インスタンスを作成します。
  2. RequestContext インスタンスで受け取った辞書をマージします。
  3. テンプレートを文字列にレンダリングします。
  4. 最後の文字列を HttpResponse インスタンスでラップします。
于 2012-04-09T20:21:12.023 に答える