如何让queryset中的时间选择器数据显示在页面
时间: 2023-06-25 21:06:14 浏览: 48
要在页面上显示 queryset 中的时间选择器数据,你需要将这些数据传递到模板中,并在模板中使用相应的 HTML 控件来显示它们。
首先,你需要在视图中将 queryset 传递给模板。可以使用以下代码:
```python
from django.shortcuts import render
from .models import MyModel
def my_view(request):
my_queryset = MyModel.objects.all()
return render(request, 'my_template.html', {'my_queryset': my_queryset})
```
在这个视图中,我们获取了 MyModel 的所有对象,并将它们传递给名为 `my_template.html` 的模板,使用 `my_queryset` 变量来引用它们。
接下来,在模板中,你可以使用循环来遍历 queryset 中的每个对象,并使用 `datetime-local` 控件来显示每个对象的时间选择器数据。例如,可以使用以下代码:
```html
{% extends "base.html" %}
{% block content %}
<h1>My Model Objects</h1>
<ul>
{% for obj in my_queryset %}
<li>
{{ obj.name }} - <input type="datetime-local" value="{{ obj.datetime_field|date:'Y-m-d\TH:i' }}">
</li>
{% endfor %}
</ul>
{% endblock %}
```
在这个模板中,我们使用一个 `for` 循环来遍历 `my_queryset`,并为每个对象创建一个包含对象名称和时间选择器数据的列表项。注意,我们使用了 `datetime_field|date:'Y-m-d\TH:i'` 这样的过滤器来将时间字段转换为适合 `datetime-local` 控件的格式。
最后,当你在浏览器中访问该视图时,你应该会看到一个包含所有 queryset 对象的列表,每个对象都有一个时间选择器控件来显示其时间选择器数据。