Редеринг списка объектов с датой и выпадающим списком

Я нахожусь на пути изучения 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>

Однако в данной модели список словарей не только не читается, но и даты не совпадают, исходя из выпадающего списка. Т.е. Багамские острова должны соответствовать только тем датам, которые показаны.

Вернуться на верх