Список часов отображается в интерфейсе администратора, но не отображается на сайте django

Я работаю над проектом, и функции заключаются в том, что пользователь должен иметь возможность добавить объект в свой "Список наблюдения". Если товар уже находится в списке, пользователь должен иметь возможность удалить его, а пользователи, которые вошли в систему, должны иметь возможность посетить страницу списка, которая должна отображать все объявления, которые пользователь добавил в свой список.

Когда я нажимаю на кнопку "добавить в список просмотра", она успешно регистрируется в панели администратора (скриншот прилагается), но на моей веб-странице она показывает мне пустое изображение (оно должно показывать изображение листинга), и когда я нажимаю на это изображение, оно показывает мне сообщение об ошибке "Аукцион не соответствует заданному запросу. ' и я заметил, что он дает мне другой url id ( включенный скриншот и отличный url id от фактического url id страницы подробностей и фактический url id страницы подробностей, на которую я должен быть связан (а это 1)).

Также, когда я удаляю один из продуктов/список (все еще нажимая на кнопку добавить в список наблюдения - я позже улучшу это), он удаляет все в списке наблюдения (даже если в списке наблюдения были другие элементы скриншот включен ).

Как остановить это? URLS.PY

    path("add_watchlist/<int:listing_id>/", views.add_watchlist, name="add_watchlist"),
    path("watchlist", views.watchlist, name="watchlist"),

MODELS.PY

class Watchlist(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    item = models.ManyToManyField(Auction)

    def __str__(self):
        return f"{self.user}'s watchlist"

LAYOUT.HTML

                    <li class="nav-item">
                            <a class="nav-link" href="{% url 'all_category' %}?category={{ category.name}}">Category</a>
                    <li class="nav-item">
                        <a class="nav-link" href="{% url 'create_listing' %}">Sell</a>
                    </li>
                    <li class="nav-item">
                        {% if user.is_authenticated %}
                        <a class="nav-link" href="{% url 'watchlist' %}">Watchlist</a>
                        {% endif %}
                    </li>
                </ul>

VIEWS.PY

def add_watchlist(request, listing_id):
    items = Auction.objects.get(pk=listing_id)
    watched = Watchlist.objects.filter(user=request.user, item=listing_id)

    if watched.exists():
        watched.delete()
        messages.info(request, 'Successfully deleted from your watchlist')
        return render(request, 'auctions/watchlist.html', {'all_watchlist': Watchlist.objects.filter(user=request.user)}) 
            
    else:
        watched, created = Watchlist.objects.get_or_create(user=request.user)
        watched.item.add(items)
        messages.success(request, 'Successfully added to your watchlist')
        return redirect('index')

@login_required
def watchlist(request):
    watchlists = Watchlist.objects.all()
    context = {'watchlists':watchlists}
    return render(request, 'auctions/watchlist.html', context)  

DETAILS.HTML

                        {% if request.user.is_authenticated %}
                            <div class="my-2">
                                <a href="{% url 'add_watchlist' detail.id %}" role="button" class="btn btn-primary btn-block">Add to Watchlist</a> 
                            </div>
                        {% endif %}

WATCHLIST.HTML

            <div class="container pb-4">
                <div class="row text-center">
                    {% for watchlist in watchlists %}
                        <div class="col-lg-3 col-sm-4">
                            <a href={% url 'listing_detail' watchlist.id %} class="btn btn-outline-dark btn-sm m-1">
                                    {% if watchlist.image_url %}
                                        <img src='{{ watchlist.image_url }}' alt="{{ watchlist.title }}" style="width:100%">
                                    {% else %}
                                        <img src="https://demofree.sirv.com/nope-not-here.jpg">
                                    {% endif %}  
                                        <h5 class="card-title mb-0">{{ watchlist.title }}</h5>
                            </a>
                        </div>
                    {% empty %}
                        <p>No watchlist found.</p>
                    {% endfor %}
                </div>
            </div>  
Вернуться на верх