Added Project delete view

This commit is contained in:
Kristofers Solo 2023-06-26 14:42:10 +00:00
parent b041bf3773
commit 360a1d76c0
3 changed files with 23 additions and 0 deletions

View File

@ -7,4 +7,5 @@ urlpatterns = [
path("add/", views.add_project, name="add-project"),
path("<str:username>/<str:project_name>/", views.ProjectDetailView.as_view(), name="project-detail"),
path("<str:username>/<str:project_name>/update/", views.ProjectUpdateView.as_view(), name="project-update"),
path("<str:username>/<str:project_name>/delete/", views.ProjectDeleteView.as_view(), name="project-delete"),
]

View File

@ -88,3 +88,16 @@ class ProjectUpdateView(LoginRequiredMixin, UserPassesTestMixin, UpdateView):
return self.get_object().owner == self.request.user
class ProjectDeleteView(LoginRequiredMixin, UserPassesTestMixin, DeleteView):
model = Project
template_name = "fossdb/delete_view.html"
slug_field = "name"
slug_url_kwarg = "project_name"
success_url = reverse_lazy("index")
def get_queryset(self):
queryset = super().get_queryset()
return queryset.filter(owner__username=self.kwargs.get("username"))
def test_func(self):
return self.get_object().owner == self.request.user

View File

@ -0,0 +1,9 @@
{% extends "layout.html" %}
{% block title %}Delete {{ project.name }}{% endblock %}
{% block content %}
<h4>Are you sue you want to delete {{ project.name }}?</h4>
<form method="post">
{% csrf_token %}
<button class="" type="submit">Delete post</button>
</form>
{% endblock %}