我有以下问题:我想要一个我想要使用的页面Select2,但选择选项列表应该来自我的数据库。 我有一个表,我想用这样的东西选择条目: SELECT DISTINCT字段FROM表ORDER BY字段ASC
这将给出我想在select中使用的列表。在PHP中使用它非常简单,但在Django(我学到的)中我不确定它是如何实现的。
由于某些原因,我不想使用模型和ORM,但是想使用直接选择我自己在视图中定义的数据库表。
为了简化这个例子,我们从这个页面中取出它: Django: Select option in template
让我们假设我有DB表组织,它有两个字段:ID,Name 我想选择' name'使用上面列出的选择。我获取这些数据后,我希望它们在
中使用<select>
<option>org1</option>
<option>org2</option>
.....
</select>
答案 0 :(得分:0)
在您的视图中,您必须使用某些查询集发送组织数据。 例如,在您的视图中,您可以返回:
return render(request, template_name, {'organisations': Organisation.objects.all()})
上述查询集可以被任何其他查询集替换。 现在,在模板文件中,您可以遍历组织数据,如:
<select name="somename">
{% for organisation in organisations %}
<option value="{{ orgnisation.id }}"> {{ organisation.name }} </option>
{% endfor %}
</select>
当您在视图中解压缩发布数据时,select标记中的name字段可用于获取字段。