Python Django-在替换视图中的字符后,向模板正确传递字符串

Python Django-在替换视图中的字符后,向模板正确传递字符串,python,django,string,html,Python,Django,String,Html,我在将特定字符串从视图传递到模板时遇到了一个奇怪的问题 该字符串源于一个表单,包含我希望稍后简化为可拆分字符串的文本。因此,我用逗号替换可能的分隔符,如下所示: # views.py mystring = myform.cleanedData['mystring'] mystring = str(mystring) # convert from unicode mystring = mystring.replace("\n", ",").replace("\r\n", ",").replac

我在将特定字符串从视图传递到模板时遇到了一个奇怪的问题

该字符串源于一个表单,包含我希望稍后简化为可拆分字符串的文本。因此,我用逗号替换可能的分隔符,如下所示:

# views.py

mystring = myform.cleanedData['mystring']
mystring = str(mystring)  # convert from unicode
mystring = mystring.replace("\n", ",").replace("\r\n", ",").replace(" ", ",").replace(";", ",")

# Then I pass it to the template:
return render(request, 'html/mytemplate.html', {'mystring': mystring})
现在,以表单数据为例:

%15
%16
如果我在呈现模板之前将mystring打印到一个文件中,它如下所示:

%15,%16
{{ mystring }}
到目前为止一切都很好。但是,问题在于试图将此字符串呈现到模板中。如果我尝试如下方式渲染字符串:

%15,%16
{{ mystring }}
结果是,前导空间包括:

    %15
,%16
它保留了逗号,但添加了一些其他时髦的东西,这是我不想要的,因为它让我的一些JS变得非常混乱。我试图用安全过滤器来防止逃逸,但在这种情况下,它似乎没有改变任何事情。另一件需要注意的事情是,如果原始表单数据已经正确格式化,即%15、%16,它工作正常,并按预期传递字符串


有什么想法吗?我已经在我的视图中做了很多日志记录,但在我将其渲染到模板之前,它似乎还不错

好吧,在看了我自己的示例代码之后,我意识到了问题所在

我需要将replace\n的顺序替换为replace\r\n,以确保后者先发生。该问题是由于替换了转义符,\n然后找不到\r\n的任何事件,因此将所有转义符保留在文本中