2008/02/06

DjangoのテンプレートでHTMLを出力

Djangoのテンプレートで直接HTMLを出力する必要があり、テンプレートのパラメータにHTMLを格納して出力したところタグがエスケープされてしまいました。

原因を調べたところ、「django.template.Context」クラスのコンストラクタのパラメータ「autoescape」がデフォルトでTrueになっているようです。

今まではショートカット「render_to_response」を使ってレスポンスを生成していましたが、下記のようにプログラムを変更して対応しました。


t = loader.get_template('post.html')
c = Context({'html':html}, False)
return HttpResponse(t.render(c))

Contextのコンストラクタの第2引数にFlaseを渡すのがポイントです。

ラベル: , ,

2008/01/25

OpenOLAPについてのメモ

2008/01/20

Pythonからコマンドを実行する

Pythonからコマンドを実行する機会があったのでメモ。
Pythonからコマンドを実行には「osモジュール」の「systemメソッド」を使用する。

下記にサンプルを掲載します。


import os

os.system("dir")

raw_input()

ラベル: ,

2007/11/05

Emacsのミニバッファで改行する

私は最近まで知りませんでしたが、Emacsのミニバッファは「C-q C-j」で改行することができます。
これは改行コードを置換したい場合などに使用します。

改行コードを置換することはあまりないですが、忘れないうちにメモということで。

ラベル: ,