Settings Django has autoescape on by default, but Jinja2 has it off by default. To turn it on, add autoescape=True to your Environment() constructor The way django marks forms and other "standard" html generating entities as "safe" from auto-escaping is not picked up by Jinja2, so you'll have to use the |safe filter on it explicitly. Filters Jinja2 comes with many filters. You can re-use django fi
id:mopemope に Twitter 上で色々教わりながら解決したネタ。jinja2 には Undefined というのがありまして、簡単に言えばテンプレート上で定義されていない場合、どう定義するのかというものだと思っているのですが(勘違いしてたらつっこみお願いします)。 これがまた、ややこしくて。Django の場合、テンプレートにおける未定義変数はスルー(エラーを無視)するのですが jinja2 は冷静に UndefinedError が帰ってきます。例えば... {{ spam.eggs }} という書き方で spam が未定義の場合は Django では無視、jinja2 では見事に UndefinedError が返ってきます。これだと色々困るので、なんとかならないかなぁと思って調べいたら解決策がありました。 jinja2 は Environment を生成してそこでテンプ
なぜJinjaというの?¶ Jinjaとう名前は日本の「神社 (temple)」に由来します。そして temple と template の発音が似ていることからその名前を採用しました。ウガンダの首都にちなんだものでは ありません。 どれくらい速いの?¶ 本音をいうとあんまり意味が無いのでベンチマークを取るのは好きじゃないです。 テンプレートのパフォーマンスは多くの要因があるので、異なった条件で異なった テンプレートエンジンのベンチマークを取らなければいけません。 テストスイートによるベンチマークではJinja2は Mako と同等のパフォーマンスで DjangoテンプレートエンジンやGenshiの10〜20倍の速さでした。 これらの数字はループなどの限られた条件でのみ図られたパフォーマンスです。 一般的に言えば、Webアプリケーション内でのテンプレートエンジンの パフォーマンスなどデータ
Posted by rodrigo.moraes on Mon 24 Nov 2008 in Webapp Framework User ratings: This recipe explains how to use Jinja2 (http://jinja.pocoo.org/2/) with webapp. Jinja is a template engine much similar to Django's one, more appropriate if you're not fully using Django and just want a nice template to work with. Let's start. 1. Download jinja2 here: 2. Add jinja2 to your project dir: There're two app
目標とサンプルとソース置き場 目標は Google App Engine 上で動くアプリを作り上げることです。 サンプル http://twisted-pool.appspot.com/ ソース http://bitbucket.org/voluntas/twisted-pool/src/ バージョン Google App Engine 1.1.9 Python 2.6.1 (GAE 推奨は 2.5.2) Werkzeug 0.4.1 (hg tips) Jinja2 2.2.1 (hg tips) フォルダ構成 tutorial/ werkzeug/ ... ln -s ../../src/werkzeug-main/werkzeug . jinja2/ ... ln -s ../../src/jinja2-main/jinja2 . debug/ templates/ hello.ht
Jinja2へようこそ¶ Jinja2はモダンでデザイナーも扱いやすいPython用テンプレート言語です。 Djangoテンプレートの後発として設計されました。動作が速く、広い用途に対応し、 サンドボックス的なテンプレート実行環境があるので安全です。 <title>{% block title %}{% endblock %}</title> <ul> {% for user in users %} <li><a href="{{ user.url }}">{{ user.username }}</a></li> {% endfor %} </ul> 特徴 サンドボックス的な実行 XSS予防に強力な自動HTMLエスケープシステム テンプレート継承 ジャストインタイムなPythonコードへの補助的なコンパイル 補助的な事前のテンプレートコンパイル デバッグの容易さ。例外の行番号はテンプレート
http://jinja.pocoo.org/2/http://jinja.pocoo.org/2/documentation/元日といえば初詣、初詣と言えば神社。Python愛好家にとっての神社と言えば、Jinja2しかないということで、Jinja2に触ってみる。Djangoテンプレートとの違いはここに簡潔にまとまっているが、ドキュメントをざっと目を通して、気づいたところをメモしていく。 TemplateとEnvironmentJinjaの最も単純な使い方としては、次のようにテンプレート文字列を与えてTemplateオブジェクトを生成し、renderで出力というものだろう。 >>> from jinja2 import Template >>> tmpl = Template("Hello, {{ name }}") >>> tmpl.render(name="World") u"Hel
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く