2012-07-20 1 views
5

他のテンプレートのプレビューを表示するビューを作成しました。私は、テンプレート内の空のタグを表示したいので、私は私のsettings.pyファイルに...単一のメソッドでdjangoのTEMPLATE_STRING_IF_INVALIDを有効にする

TEMPLATE_STRING_IF_INVALID = '%s' 

を含めました。しかし、私は、特定のビューに対してこの設定を有効にしたいだけで、私のアプリではグローバルに設定しません。

ありがとうございます。 :)

答えて

1
from django.conf import settings 

def myview(request): 
    settings.TEMPLATE_STRING_IF_INVALID = '%s' # '%s' will get expanded to the variable name that was not found 
    ... 
    template = render(request, 'myview.html', {}) 
    settings.TEMPLATE_STRING_IF_INVALID = '' 
    return template 

これは醜いことに注意してください。 TEMPLATE_STRING_IF_INVALIDを ''に戻す前に別のユーザーが短時間で別のページをリクエストすると、無効なタグが表示されることがあります。 Django docs say specifically NOT to do thisがありますが、open ticketもあり、一部の設定では問題ないことが示唆されています。

うまくいけば、よりスマートな方が来て、より良い解決策を提供します。

関連する問題