Commit 770e7dff38a9239d0fc4c9da967071f5ad449997
1 parent
510f3e21
Exists in
master
and in
5 other branches
Delete user working properly [Issue: #6]
Showing
3 changed files
with
14 additions
and
5 deletions
Show diff stats
users/templates/list_users.html
@@ -66,7 +66,7 @@ | @@ -66,7 +66,7 @@ | ||
66 | <a href="javascript:void(0)" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#DeleteModal">{% trans 'Delete' %}</a> | 66 | <a href="javascript:void(0)" class="btn btn-primary btn-lg" data-toggle="modal" data-target="#DeleteModal">{% trans 'Delete' %}</a> |
67 | </div> | 67 | </div> |
68 | </div> | 68 | </div> |
69 | - | 69 | + |
70 | 70 | ||
71 | <!-- Modal --> | 71 | <!-- Modal --> |
72 | <div class="modal fade" id="DeleteModal" tabindex="-1" role="dialog" aria-labelledby="DeleteModalLabel"> | 72 | <div class="modal fade" id="DeleteModal" tabindex="-1" role="dialog" aria-labelledby="DeleteModalLabel"> |
@@ -77,11 +77,11 @@ | @@ -77,11 +77,11 @@ | ||
77 | <h4 class="modal-title" id="DeleteModalLabel">Confirm delete</h4> | 77 | <h4 class="modal-title" id="DeleteModalLabel">Confirm delete</h4> |
78 | </div> | 78 | </div> |
79 | <div class="modal-body"> | 79 | <div class="modal-body"> |
80 | - Are you sure you want to delete? | 80 | + Are you sure you want to delete? |
81 | </div> | 81 | </div> |
82 | <div class="modal-footer"> | 82 | <div class="modal-footer"> |
83 | - <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button> | ||
84 | - <button type="button" class="btn btn-primary">Delete</button> | 83 | + <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button> |
84 | + <button type="button" class="btn btn-primary"> <a href="{% url 'users:delete' acc.username %}">Delete</a></button> | ||
85 | </div> | 85 | </div> |
86 | </div> | 86 | </div> |
87 | </div> | 87 | </div> |
users/urls.py
@@ -7,6 +7,7 @@ urlpatterns = [ | @@ -7,6 +7,7 @@ urlpatterns = [ | ||
7 | url(r'^create/$', views.Create.as_view(), name='create'), | 7 | url(r'^create/$', views.Create.as_view(), name='create'), |
8 | url(r'^edit/(?P<username>[\w_-]+)/$', views.Update.as_view(), name='update'), | 8 | url(r'^edit/(?P<username>[\w_-]+)/$', views.Update.as_view(), name='update'), |
9 | url(r'^view/(?P<username>[\w_-]+)/$', views.View.as_view(), name='view'), | 9 | url(r'^view/(?P<username>[\w_-]+)/$', views.View.as_view(), name='view'), |
10 | + url(r'^delete/(?P<username>[\w_-]+)/$', views.delete, name='delete'), | ||
10 | url(r'^profile/$', views.Profile.as_view(), name='profile'), | 11 | url(r'^profile/$', views.Profile.as_view(), name='profile'), |
11 | url(r'^profile/editar/(?P<username>[\w_-]+)/$', views.EditProfile.as_view(), name='edit_profile'), | 12 | url(r'^profile/editar/(?P<username>[\w_-]+)/$', views.EditProfile.as_view(), name='edit_profile'), |
12 | # | 13 | # |
users/views.py
1 | -from django.shortcuts import get_object_or_404 | 1 | +from django.shortcuts import get_object_or_404,redirect |
2 | from django.db.models import Q | 2 | from django.db.models import Q |
3 | from django.views import generic | 3 | from django.views import generic |
4 | from django.contrib import messages | 4 | from django.contrib import messages |
@@ -95,6 +95,14 @@ class View(LoginRequiredMixin, generic.DetailView): | @@ -95,6 +95,14 @@ class View(LoginRequiredMixin, generic.DetailView): | ||
95 | slug_field = 'username' | 95 | slug_field = 'username' |
96 | slug_url_kwarg = 'username' | 96 | slug_url_kwarg = 'username' |
97 | 97 | ||
98 | +def delete(request,username): | ||
99 | + user = get_object_or_404(User,username = username) | ||
100 | + user.delete() | ||
101 | + messages.success(request,_("User deleted Successfully!")) | ||
102 | + return redirect('users:manage') | ||
103 | + | ||
104 | + | ||
105 | + | ||
98 | class UpdateUser(LoginRequiredMixin, generic.edit.UpdateView): | 106 | class UpdateUser(LoginRequiredMixin, generic.edit.UpdateView): |
99 | 107 | ||
100 | allowed_roles = ['student'] | 108 | allowed_roles = ['student'] |