2011-12-28 15 views
3

djangoのデフォルトのテンプレートシステムに最もよく使われるものは何ですか?デフォルトのdjangoテンプレートシステムに代わるもの

あなたの誰かが試したことがありますか?

編集: パフォーマンスはどうですか?

+4

あなたがそれをしたいと思う理由:あなたが見てみたい場合は、ここでのコードへのリンクはありますか? – juliomalegria

+1

私はそれをする理由がない、私は好奇心を求めるだけで、他の経験を聞きたい。 – nemesisdesign

+0

質問を展開して、あなたの現在の意見がdjangoテンプレートシステムにあることを示すことができますか?あなたはそれが好きではないですか?それは何か不足していますか?すべてのhtmlマークアップをPythonコードから直接生成したいですか? – jdi

答えて

5

Jinja2のは非常にDjangoのテンプレートのようなものです:http://splike.com/wiki/Convert_Django_Templates_to_Jinja2

マコは、Djangoのように非常に多くありません。

これらの2つを試してみて、あなたが一番気に入っているアプローチを見てみましょう。

+0

パフォーマンスに関する情報はありますか?これらの異なるシステムは異なる動作をしますか? – nemesisdesign

+0

@nemesisdesign Makoは私の経験では非常に速いです。 http://jaja.pocoo.org/docs/faq/では、Jinja2とMakoの両方がDjangoテンプレートよりも10〜20倍高速だと主張しています。 –

3

多分Jinja2の:http://lethain.com/replacing-django-s-template-language-with-jinja2/

をなぜあなたはそれを交換したいのですか?それは非常に強力であり、非常に多くのサポートに組み込まれています。私はあなたがすでに特定のテンプレートシステムを念頭に置いていれば、それを置き換えたいと思うでしょう。

1

Jinja2が私が知っている最も一般的な代替品です。最大の違いは、テンプレートにかなり多くのロジックとコードを入れることができることです.Djangoのテンプレートシステムは、この点で意図的に制限されています。

私はJinja2を使いました。私は個人的にDjangoのテンプレートシステムを好んでいます。なぜなら、できるだけ多くの処理がビューコードで行われ、リファクタリングとテストがより簡単になるクリーナースタイルを奨励するからです。

Jinja2とMakoはDjangoのテンプレートレンダラーよりも約20倍高速ですが、そのようなベンチマークは意味がないことを指摘しているsection in the Jinja2 FAQがあります。

1

Coffinプロジェクト貢献者は、Djangoテンプレートの完全なドロップイン置換を構築しようとしています。 Coffin APIはあなたのためにDjangoのフィルタとタグを読み込むので、JinjaのテンプレートとDjangoのために書かれた既存のFilteとTag Libを利用することができます。 棺のプロジェクトは積極的に維持されています。あなたがここにそれ以上の基準を読むことができます:

  1. justcramer.com/2009/09/14/using-jinja2-with-django/
  2. matthowell.com/blog/2011/03/02/integrating-jinja2- and-django/
0

純粋なPythonのOOのアプローチを好むテンプレートはまったく使用しません。

これを行うには、Pythonで小さくて便利なライブラリを作成します。これにより、マークアップコードが生成されます。

QTのようなツールでは経験がいくらか類似していると言えます。私のツールはQTのような広大なツールよりもずっと小さく、特にクラスとコンポジットパターンの使用。

多くの人が私のアプローチを嫌うと思います。

Pytml framework

+0

これらのリンクは両方とも破損しています。新しいリンクがありますか? – Ryan

+1

@Ryanリンクを更新しました –