5

我创建了一个显示其他模板预览的视图。我想在模板中显示空标签,所以我已经包含了

TEMPLATE_STRING_IF_INVALID = '%s'

...在我的settings.py档案上。但是,我只想为特定视图启用此设置,而不是在我的应用程序上全局启用此设置。

提前致谢。:)

4

1 回答 1

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 文档明确说不要这样做,但也有一张公开的表明它可能适用于某些设置。

希望更聪明的人会过来并提供更好的解决方案。

于 2012-07-21T02:08:15.630 回答