Здравствуйте! Помогите сделать зависимый <select> из базы данных

Помощь для создания зависимости от базы данных.

введите описание изображения здесь

Я не знаю, как настроить эту зависимость между таблицами базы данных. если возможно, подскажите как, или покажите пример как это реализовать. таблицы в базе данных настроены по принципу "один ко многим", поэтому необходимо сделать много зависимостей.

models.py

class Car_mark(models.Model):
    name = models.CharField(max_length=20)

    def __str__(self):
        return self.name.title()

    class Meta:
        verbose_name = 'Марка'
        verbose_name_plural = 'Марки'


class Car_model(models.Model):
    model = models.ForeignKey(Car_mark, on_delete = models.CASCADE)
    name = models.CharField(max_length=20)

    def __str__(self):
        return self.name.title()

    class Meta:
        verbose_name = 'Модель'
        verbose_name_plural = 'Модели'
 


class Car_engin_type(models.Model):
    engin = models.ForeignKey(Car_model, on_delete=models.CASCADE)
    name = models.CharField(max_length=20)

    def __str__(self):
        return self.name.title()

    class Meta:
        verbose_name = 'Двигатель'
        verbose_name_plural = 'Двигатели'

views.py

class MarkList(ListView):
    model = Car_mark
    ordering = 'name'
    template_name = 'index.html'
    context_object_name = 'marka'


class ModelList(ListView):
    model = Car_model
    ordering = 'name'
    template_name = 'index.html'
    context_object_name = 'model'

urls.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', MarkList.as_view()),
    path('', ModelList.as_view()),

index.html

{% load static %}
<!DOCTYPE html>

<html lang="ru">
    <head>
        <link rel="stylesheet" href="{% static 'Zayavky/css/stail.css' %}">

    </head>


<body>
<h1>Выберите автомобиль:</h1>

<label>
    <select class="select-css">
    {% for el in marka %}
        <option>{{ el }}</option>
    {% endfor %}
    </select>
</label><br>

<label>
    <select class="select-css">
    {% for el2 in model %}
        <option>{{ el2 }}</option>
    {% endfor %}
    </select>
</label><br>



</body>
</html>
Вернуться на верх