我的问题是这样的:我从 SQL Server 数据库中创建了一个包含客户数据的页面。我的网页是 utf-8 ......我可以看到:
编辑:如果我是新用户,则无法显示图像... ^^
在第一个“{{ rows_1 }}”中,您可以看到 W\xe4denswil,但在表格中它不显示。但为什么?此外,它必须是 Wädenswil(带有德语变音符号)。我尝试了很多东西来使用 utf-8 制作我的原始文件。我最后一次尝试是这样的:
rows_1 = unicode(cursor.fetchall(), 'utf-8')
但这意味着“强制转换为 Unicode:需要字符串或缓冲区,找到列表”
这是我使用的代码(来自 django 的视图):
conn = pyodbc.connect('DRIVER={SQL Server};CHARSET=UTF8;SERVER=MAURITIUS;DATABASE=baan5c;UID=portal;PWD=P0rtalReader')
cursor = conn.cursor()
cursor.execute("SELECT d.t_bpid, d.t_nama, a.t_namc, a.t_hono, a.t_pstc, a.t_name FROM ttccom100070 d, ttccom130070 a WHERE d.t_cadr = a.t_cadr AND (d.t_bpid = '%s')"%form)
rows_1 = unicode(cursor.fetchall(), 'utf-8')
return render_to_response('kundendaten.html', { 'rows_1': rows_1, 'rows_2': rows_2, 'rows_3': rows_3, 'current_date': now, 'form':form}, context_instance=RequestContext(request))
在这里我的html ...:
<h2>Customer Data</h2>
{{ rows_1 }}
</fieldset>
<fieldset class= "field1">
<table border="1" class="name">
<tr>
<th colspan="6">Customer Overview</th>
</tr>
<tr>
<th class="CUSCos">Customer Number</th>
<th class="CUSNam">Name</th>
<th class="CUSStr">Street</th>
<th class="CUSNr">Number</th>
<th class="CUSZip">Zip Code</th>
<th class="CUSCit">City</th>
</tr>
{% for row in rows_1 %}
<tr>
<td>{{ row.0 }}</td>
<td>{{ row.1 }}</td>
<td>{{ row.2 }}</td>
<td>{{ row.3 }}</td>
<td>{{ row.4 }}</td>
<td>{{ row.5 }}</td>
</tr>
{% endfor %}
</table>
我使用 win7 32bit、python 2.7.3、django 1.4.1、html5 和 css3