Я не могу добраться до одного параметра(m2m) из моих моделей Django

Я создал представление, в котором я добавляю остановки к маршруту, оно работает нормально, но остановки не отображаются по порядку, когда я их добавляю, и я понятия не имею почему. Пожалуйста, подскажите, где я допускаю ошибку

Вот мой код:

Модели:

#not important
class Port(models.Model):
    

class Route(models.Model):
    name = models.CharField(max_length=128, default='')
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    stop_list = models.ManyToManyField(Port, through='RoutePort')

    def __str__(self):
        return f'{self.name}'



class RoutePort(models.Model):
    port = models.ForeignKey(Port, on_delete=models.CASCADE)
    route = models.ForeignKey(Route, on_delete=models.CASCADE)
    order = models.PositiveIntegerField()

    class Meta:
        ordering = ['order']

порядок, в котором они должны появляться, задается параметром 'order' из класса routeport

Форма:

class AddRoutePort(forms.ModelForm):

    class Meta:
        model = RoutePort
        fields = ['port', 'order']

форма короткая, и я не знаю, не забыл ли я там что-нибудь

View, get работает правильно, post работает почти нормально. Новые порты корректно добавляются в новый маршрут из списка, но они появляются в порядке добавления, а не так, как я хотел.

class RouteCorrectView(View):

    def get(self, request, pk):
        route = Route.objects.get(pk=pk)
        form = AddRoutePort()
        return render(request, 'route_correct.html', {'route':route, 'form':form})


    def post(self, request, pk):
        route = Route.objects.get(pk=pk)
        form = AddRoutePort(request.POST)
        if form.is_valid():
            to_port = form.save(commit=False)
            to_port.route = route
            order = to_port.order
            ordering = RoutePort.objects.filter(order__gte=order, route=route)
            for port in ordering:
                port.order += 1
                port.save()
            to_port.save()
            return redirect('route_correct', pk)
        return render(request, 'route_correct.html', {'route':route, 'form':form})

и HTML - я не могу нарисовать здесь установленный порядок, поэтому я думаю, что где-то ранее была допущена ошибка. Строка {{ stops.order }} ничего не делает, так что почти уверен, что ошибка в форме или модели, но я не знаю где

{% extends 'base.html' %}
{% block content %}
    <div class="card">
    <ul>Nazwa</ul>
        <p>{{ route.name }}</p>
    <ul>Twórca</ul>
        <p> {{ route.user }}</p>
    <ul>Szlak</ul>
        <td> {% for stops in route.stop_list.all %}
        {{ stops }} 
        {{ stops.order }} # <- this is not working at all
            {% empty %}
            Szlak jest jeszcze pusty
        {% endfor %}</td>
    </div>

    <form method="post" enctype="multipart/form-data">
    {% csrf_token %}
    {{ form.as_p }}
    <input type="submit">

</form>



    </div>

{% endblock %}
Вернуться на верх