如何从 Django 模板/上下文中更改为字符串并删除 '?

Posted

技术标签:

【中文标题】如何从 Django 模板/上下文中更改为字符串并删除 \'?【英文标题】:How to change to string and remove ' from Django tempalates / context?如何从 Django 模板/上下文中更改为字符串并删除 '? 【发布时间】:2017-03-07 23:18:13 【问题描述】:

我目前有一个 unicode 格式的日期:

k = u'2015-02-01'

我尝试将其添加到列表中并将其更改为字符串:

date = []
date.append(str(k))

然后我想将它作为 Django 上下文传递给我的模板。

但是,日期显示如下:

'2015-02-01'

我如何摆脱 $#39;并用双引号 (") 替换它?

非常感谢。

【问题讨论】:

【参考方案1】:

您可以尝试在模板中防止字符串转义,如下所示:

 variable|safe 

视野内方式:

from django.utils.safestring import mark_safe
from django.template import Context
data=mark_safe(data) 
inescapable = Context('data': data, autoescape=False)

【讨论】:

有没有办法在我将转义字符串作为上下文参数传递之前删除它?我尝试了 .strip() 并不太奏效。 看看这个答案***.com/questions/18211286/… 还有这个***.com/questions/8774902/…【参考方案2】:

我知道这是旧的,但其他人可能会遇到同样的问题

试试

% autoscape off %  date  % endautoscape %

对我来说效果很好

【讨论】:

【参考方案3】:

从谷歌图表请求图表时,数据必须作为文本数组发送。 csv 文件必须是没有撇号的纯文本。 然而 代码片段 data = repr(textData) 返回以 ' ' 为界的数据 这在 html 中被解释为“'”

解决这个问题的方法是 javascript split 方法 var par = textData.split(""&#39") textArray = par[1] // the part without ' 其余代码

【讨论】:

以上是关于如何从 Django 模板/上下文中更改为字符串并删除 '?的主要内容,如果未能解决你的问题,请参考以下文章

Django 模板中的字符串操作

我将如何在 Django 模板标签中使用模板上下文变量的值? [复制]

对于 Django 模板 %url% 标签,我如何从通用视图上下文中找到所有 URL 参数,而不仅仅是最后一个?

Django模板访问嵌套数据

我如何在Django模板标签中使用模板上下文变量的值? [重复]

Django / i18n:如何在模板中转换方法结果?