【发布时间】:2021-04-08 13:28:21
【问题描述】:
我想从两个或更多模型中选择带有 django orm 的列。
SELECT nim, k.kode, s.nama, sks, nilai, th_ajaran FROM mahasiswa_khs k, mata_kuliah_si s WHERE k.kode = s.kode AND nim = %s
这是我的代码
khs = Khs.objects.filter(nim=nim).values_list('kode').union(SI.objects.all().values_list('kode'))
但是,我在模板中调用它没有显示
这是我的模板:
{% for khs in khs %}
<tr>
<td>{{forloop.counter}}</td>
<td>{{khs.kode}}</td>
<td>{{khs.nama}}</td>
<td>{{khs.sks}}</td>
<td class="vertical-align-mid">{{khs.nilai}}</td>
<th>{{khs.th_ajaran}}</th>
</tr>
{% endfor %}
还有观点:
khs = Khs.objects.filter(nim=nim).union(SI.objects.all().values_list('kode'))
context ={
'khs' : khs,
}
return render(request, 'mahasiswa/mahasiswa.html',context)
【问题讨论】:
-
使用
.values_list('kode')的原因是什么? -
要合并该模型,我没有收到错误“使用的 SELECT 语句具有不同数量的列”)
-
明白了。请在您的问题中包含模板和视图。
-
是的,有我的模板和视图
标签: django django-models django-views django-templates django-orm