【发布时间】:2020-10-04 04:26:54
【问题描述】:
我尝试实现 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")
]
【问题讨论】:
-
不应该是
type="submit"等,请先修复模板的HTML。 -
@WillemVanOnsem 您好,是的,您是对的,我已将其更改为
<input type="submit" value="Confirm">,但仍然无法使用):
标签: django django-models django-views django-templates