Не удается удалить объект -? Csrfmiddlewaretoken = отображается в конце текущего URL-адреса на панели URL (django) - PullRequest
0 голосов
/ 17 апреля 2020

Я создаю простую социальную сеть в django.

В «доме» моей социальной сети у меня есть список всех сообщений, опубликованных всеми пользователями, с указанием автора и даты публикации. Под каждым сообщением зарегистрированного пользователя появляется кнопка «Удалить». Если пользователь нажимает на него, он возвращает определенный c просмотр этого сообщения с сообщением "действительно ли вы хотите sh удалить это сообщение?" и две кнопки для подтверждения или отмены удаления сообщения.

Однако, когда я нажимаю кнопку «подтвердить удаление», страница перезагружается в ту же точку, и ничего не меняется, за исключением того факта, что

? Csrfmiddlewaretoken = - случайная последовательность -

появляется в конце текущего URL-адреса на панели URL.

Чего мне не хватает?

Вот мой шаблон:

<h3>Do you want to delete this post?</h3>

<div class="posts">
    {% include "posts/_post.html" with post=object hide_delete=True %}
</div>

<form class="POST">
    {% csrf_token %}

    <input type="submit" value="Confirm Delete" class="btn btn-danger btn-large">

    <a href="{% url 'posts:delete' pk=post.pk %}" class="btn btn-simple btn-large btn-default">Cancel</a>

</form>

и мое представление DeletePost на основе generic.DeleteView:

class DeletePost(LoginRequiredMixin, SelectRelatedMixin, generic.DeleteView):

    model = models.Post
    select_related = ('user', 'group')
    success_url = reverse_lazy('posts:all')

    def get_queryset(self):
        queryset = super().get_queryset()
        return queryset.filter(user_id = self.request.user.id)

    def delete(self,*args,**kwargs):
        messages.success(self.request,'Post Deleted')
        return super().delete(*args,**kwargs)

1 Ответ

1 голос
/ 17 апреля 2020

В настоящее время у вас есть

<form class="POST">

Это должно быть

<form method="POST">

Если метод отсутствует, браузер по умолчанию выполняет запрос GET, поэтому вы видите значения формы в URL Строка запроса.

...