Python 如何在视图中使用光标显示查询集结果
我有一个函数,它运行一个查询并传递结果以显示在视图中Python 如何在视图中使用光标显示查询集结果,python,django,Python,Django,我有一个函数,它运行一个查询并传递结果以显示在视图中 def index(request): data = dict() cursor = connection.cursor() cursor.execute('''SELECT user.email, item.id, count(item.author_id) FROM item INNER JOIN user on item.use
def index(request):
data = dict()
cursor = connection.cursor()
cursor.execute('''SELECT user.email, item.id, count(item.author_id)
FROM item INNER JOIN user on item.user_id = user.id
GROUP BY item.author_id ''')
data['item'] = cursor.fetchall();
return render(request, 'ideax/panel.html', data)
查询集结果的示例:
[('teste@gmail.com', 1, 4), ('admin@gmail.com', 2, 5)]
如何在我的panel.html
中显示此查询的结果
我试过这个,但不起作用:
{% for d in item %}
{{d.email}}
{% endfor %}
它正在返回元组,所以我们必须像下面那样解包
{% for email, item_id, count in item %}
{{email}}
{% endfor %}
或者我们也可以使用索引
{% for d in item %}
{{ d.0 }}
{% endfor %}
不要这样做。用一个模型。@DanielRoseman你能告诉我多一点吗?我没明白,你没明白什么?模型是Django的基本组成部分。你应该去做这个教程。我试过了,但是我不能得到相同的查询结果。我很难做连接和计数。