无法使用 django 的 render_to_string 对单引号 (') 进行编码

Posted

技术标签:

【中文标题】无法使用 django 的 render_to_string 对单引号 (\') 进行编码【英文标题】:can't encode single quote (') using django's render_to_string无法使用 django 的 render_to_string 对单引号 (') 进行编码 【发布时间】:2011-04-29 17:24:54 【问题描述】:

我对 django 的 render_to_string 和编码单引号有问题。

... = render_to_string('dummy.txt', 'request':request, 'text':text,, context_instance=RequestContext(request)))

为什么只有这些引号被翻译成 '#39;'和所有其他特殊字符不是吗?

【问题讨论】:

您能提供一些输入/输出吗? dummy.txt 可能吗? 【参考方案1】:

要获得纯字母的字符串,您需要对其进行转义。 在模板标签中自动转义您的变量。 像这样的

% autoescape off %
 body 
% endautoescape %

【讨论】:

是的,这是丹尼尔 10 年前就已经回答的问题了。 ;) 以防万一有人正在寻找快速复制粘贴解决方案。 :-)【参考方案2】:

Automatic escaping。 链接现在更改为https://code.djangoproject.com/wiki/AutoEscaping

【讨论】:

以上是关于无法使用 django 的 render_to_string 对单引号 (') 进行编码的主要内容,如果未能解决你的问题,请参考以下文章

无法使用有效的用户名和密码登录 django 管理页面

使用django认证系统时login.html无法渲染

Django:django-autocomplete-light 无法正常工作

无法在 Django 模板文件的 for 循环中使用条件标签

切换到django 3并返回django 2后无法登录Django项目

Django使用模板后无法找到静态资源文件