Я знаю, что фильтр шаблонов может вернуть экземпляр SafeData
, выполнив что-то похожее на следующее.
from fictitious import guaranteed_safe
from django.utils.safestring import mark_safe
def myfilter(text):
return mark_safe(guaranteed_safe(text))
Мой вопрос: возможно ли пометить переменные как безопасные перед тем, как передать их в шаблон. Будет ли это работать как ожидалось?
from fictitious import guaranteed_safe
from django.utils.safestring import mark_safe
def myview(request, text):
return render_to_response('index.html', {
'text': mark_safe(guaranteed_safe(text))
})
Причина, по которой я стремлюсь помечать переменные как безопасные из представлений, заключается в том, что другие люди, скорее всего, будут создавать шаблоны для работы с представлениями, и я хочу, чтобы авторы шаблонов могли писать {{ document.html }}
вместо {{ document.html|safe }}
.