我['34242342', 'Ford focus 2015', 'Chevrolet Impala 1960', 'Ford focus 2012', 'Dodge charger 2010', 'Dodge', 'New fiat punto 2012']
创建自:(('34242342',), ('Ford focus 2015',), ('Chevrolet Impala 1960',))
(未满(。
我想在我的模板上显示它:
{% for p in full %}
<form action="{% url 'table' %}" method="GET">
<input style="background-color:#2F4050;color:#A7B1C2; margin-top:5px;border: none; border-color: rgba(0,0,0,0.9);" type="submit" value={{ p }} name="button">
</form>
{% endfor %}
但是它没有显示完整的元素,而是剪切它:
34242342
Ford
Chevrolet
Ford
Dodge
New
如果我调用以下元素,它会正确显示所有内容:
{% for p in full %}
{{p}}
{% endfor %}
它仅在输入选项value
剪切元素。
更新
views.py:
db = MySQLdb.connect(host="192.168.4.200",
user="root",
passwd="123456",
db="store", charset="utf8")
cur = db.cursor()
cur.callproc('store')
info = cur.fetchall()
full = info
new_list = []
for tup in full:
full = ",".join(tup)
new_list.append(full)
return render(request, 'table.html', {'full': new_list})
对数据库和显示数据的简单请求。
您可以使用列表推导解压缩 1 元组的元组:
data = (('34242342',), ('Ford focus 2015',), ('Chevrolet Impala 1960',))
result = [item for item, in data]
例如:
>>> [item for item, in data]
['34242342', 'Ford focus 2015', 'Chevrolet Impala 1960']
请注意逗号item,
这会强制解压缩 1 元组。
如果元组可以包含更多元素,您也可以遍历这些元素:
result = [subitem for item in data for subitem in item]
话虽如此,请不要使用.values_list(..)
来检索数据。检索模型对象。这样就可以保留模型中实现的逻辑。此外,强烈建议使用 Django ORM。Django的模型通常是使Django有效使用的原因。
在模板中,您应该为属性使用引号:
<input value="{{ p }}"name="button"<