我正在尝试利用回到模型之类的对象中的数据,这些数据可以在视图中返回并由Django模板使用。连接到SQL Server数据库并使用pyodbc。
这是我要获取数据的查询:
results=cursor.fetchall()
print(results)
result_list = []
for row in results:
print(row) # ('10000', 'Col2 Data', 'Col3', Decimal('1000.000'), None)
print(row[0]) # 10000
result_list.append(row)
结果:
[('10000', 'Col2 Data', 'Col3', Decimal('1000.000'), None),
('10001', 'Col2 Data2', 'Col3', Decimal('1000.000'), None)]
是否有任何方法可以将其作为可直接在模板中使用的字典(键,值)对?我目前正在使用返回数据的定位。我想直接引用row.id而不是row [0],但是由于返回的数据未映射到任何Django模型(也不将其设置为数据库本身的表/视图),因此我不确定如何做到这一点。任何建议将不胜感激。
注意,我能够建立Django模型并获取返回的数据,从而将其映射到模型:
return [ModelName(*row) for row in results]
,其中ModelName映射到表。问题是针对django中没有模型映射到数据库表的情况。
现在,循环遍历模板中的结果确实可以按预期显示数据,但是理想情况下,我宁愿不使用返回数据的顺序或位置进行映射。