Я пытался реализовать deleteview, однако, хотя форма и загрузка страницы работают нормально, данные в конце не удаляются. Я застрял в этом несколько часов, пожалуйста, помогите мне!
Модель компетенций
class Competencies(models.Model):
employee = models.ForeignKey(Profile, blank = False, null = True, on_delete = models.SET_NULL)
competency_category = models.ForeignKey(competency_category, blank = False, null = True, on_delete=models.CASCADE)
.
.
def __str__(self):
return self.summary
Views.py - класс DeleteView
from django.views.generic import DetailView, DeleteView
class Competencies_Delete(DeleteView):
model = Competencies
template_name = 'GnC/HuNet_DeleteDGC.html'
def get_object(self):
id = self.kwargs.get("pk")
return get_object_or_404(Competencies, id = id)
def get_success_url(self):
return reverse('GnC:User_GnC')
HTML-файл, который можно удалить при нажатии кнопки "Удалить"
{%for competencies in Personal_competencies_list%}
<tr>
<td><a href = '../allusers/{{competencies.id}}/DeleteC'>Delete</a></td>
</tr>
{%endfor%}
HuNet_DeleteDGC.html
{%extends 'utilitypage.html'%}
{%block content%}
<form action="{% url 'GnC:User_GnC'%}" method='POST'>
{%csrf_token%}
<h4>Do you want to delete "{{object.summary}}"?</h4>
<p><input type ="submit" value = "Confirm"></p>
<p><a href="{% url 'GnC:User_GnC'%}">Cancel</a></p>
</form>
{%endblock%}
urls.py
app_name = 'GnC'
urlpatterns = [
path('allusers/<int:pk>/DeleteC', views.Competencies_Delete.as_view(), name ="Delete_User_Competencies")
]
1 ответ
Страница подтверждения удаления должна быть post вызовом на тот же URL-адрес, который был вызван get , в настоящее время вы указываете на другой URL-адрес.
<form action="{% url 'GnC:User_GnC'%}" method='POST'>
Измените это на
<form action="" method='POST'>
Похожие вопросы
Новые вопросы
django
Django - это серверная платформа веб-приложений с открытым исходным кодом, написанная на Python. Он разработан для сокращения усилий, необходимых для создания сложных веб-сайтов и веб-приложений, управляемых данными, с особым упором на меньшее количество кода, отсутствие избыточности и более явное, чем неявное.