Я работаю над проектом жилья с моделью листинга.В листинге есть ManyToManyField, называемый избранным, который должен содержать все имена пользователей, которые щелкнули по избранной кнопке на странице сведений для списка.Прямо сейчас кнопка «Избранное» добавляет имя пользователя в список избранного, а затем 404, потому что я неправильно перенаправляю на страницу сведений о списке.
Я пытался следовать этому руководству (https://www.youtube.com/watch?v=VoWw1Y5qqt8) и хотя я думаю, что правильно выполнил мою страницу 404, пока она находится в руководстве, она обновляется (около 6:30).
Вот модели.py:
class Listing(models.Model):
favorites = models.ManyToManyField(User, related_name='favorites',
blank=True)
...
перечисление_детей.html:
...
<form action="{% url 'favorite_listing' %}" method="listing">
<button type="submit" name="listing_id" value="{{ listing.id }}"
class="btn btn-primary">Favorite</button>
</form>
urls.py:
...
urlpatterns = [
...
url(r'^favorite/$', views.favorite_listing, name="favorite_listing"),
]
views.py:
...
def favorite_listing(request):
listing = get_object_or_404(Listing,
id=request.POST.get('listing_id'))
listing.favorites.add(request.user)
return HttpResponseRedirect(listing.get_absolute_url())
...
На данный момент я получаю:
Страница не найдена (404) Метод запроса: GET URL запроса: http://127.0.0.1:8000/favorite/?listing_id=48 Поднято: reviews.views.favorite_listing
Любая и вся помощь очень ценится!