Редеринг списка объектов с датой и выпадающим списком
Я нахожусь на пути изучения django. Мой личный проект направлен на создание кликабельной даты на основе доступных дат для различных направлений.
У меня есть некоторые данные, которые напрямую соскабливаются из scrapy в следующем формате:
departureDate = [{'departureDate': '2022-07-29', 'id': 'The Bahamas'},
{'departureDate': '2022-11-11', 'id': 'The Bahamas'},
{'departureDate': '2022-11-18', 'id': 'The Bahamas'},
{'departureDate': '2022-12-02', 'id': 'The Bahamas'},
{'departureDate': '2023-01-13', 'id': 'The Baltic Sea'},
{'departureDate': '2023-02-03', 'id': 'The Baltic Sea'},
{'departureDate': '2023-02-17', 'id': 'The Baltic Sea'},
{'departureDate': '2023-03-03', 'id': 'The Baltic Sea'},
{'departureDate': '2023-03-24', 'id': 'The Baltic Sea'},
{'departureDate': '2023-04-07', 'id': 'The Western Mediterranean'},
{'departureDate': '2023-04-14', 'id': 'The Western Mediterranean'},
{'departureDate': '2023-04-28', 'id': 'The Western Mediterranean'},
{'departureDate': '2023-12-21', 'id': 'The Western Mediterranean'},
{'departureDate': '2023-12-28', 'id': 'The Western Mediterranean'}],
Я хочу затем иметь возможность загрузить это в мою модель:
Вот мой model.py:
from django.db import models
class Cruises(models.Model):
departureDate = models.DateTimeField('Departure Date')
id = models.CharField('Destination', max_length=200)
Тогда мои взгляды:
from django.shortcuts import render
from .models import Cruises
def basic(request):
departure_list = Cruises.objects.values('departureDate', 'id')
return render(request, cruise_control/basic.html, context={'departure_list':departure_list})
basic.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Cruises</title>
</head>
<body>
<h1> Cruise Control </h1>
{% for dep_l in departure_list %}
<form action="/action_page.php">
<label for='destination'>Destination</label>
<input type="text" list="destination" />
<datalist id="destination">
<option>{{dep_l.id}}</option>
</datalist>
<label for="cruisetime">Departure date</label>
<input type="date" id="cruisetime" name="cruisetime" min={{dep_l.departureDate}}>
<input type="submit">
</form>
{% endfor %}
</body>
</html>
Однако в данной модели список словарей не только не читается, но и даты не совпадают, исходя из выпадающего списка. Т.е. Багамские острова должны соответствовать только тем датам, которые показаны.