Int*_*nex -2 python database django unicode split
我在Django中有一个带有TextField的表单,它接收逗号分隔的输入,例如test1,test2,test3,test4,然后将其拆分为:
test = request.POST.get('test', '').split(',')
Run Code Online (Sandbox Code Playgroud)
然后保存到Postgres数据库模型
然后检索并显示
但是,显示时,返回的拆分列表为unicode,
[u'test1', u'test2', u'test3', u'test4']
Run Code Online (Sandbox Code Playgroud)
而不是期望的
['test1', 'test2', 'test3', 'test4']
Run Code Online (Sandbox Code Playgroud)
为什么是这样?这个问题是我无法弄清楚如何在django模板页面中显示数组的每个元素 - 常规
{% for element in list %}
<p>{{ element }}</p>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
不工作.有什么想法吗?
Django默认使用Unicode.总的来说这是件好事.
获取Unicode字符串的原因是该get()方法返回您要拆分的Unicode字符串.
这应该不是问题 - Django会像你期望的那样在任何地方接受和处理Unicode字符串.实际上,上面链接的Django文档建议使用Python 3.x样式并将Unicode作为默认字符串:
正如我们在1.5版的Django代码中所做的那样,我们建议您
__future__在代码中从库中导入unicode_literals .然后,当您特别想要创建bytestring文字时,请在字符串前加上'b'.
你的循环应该完全按预期工作.
| 归档时间: |
|
| 查看次数: |
610 次 |
| 最近记录: |