Commit 770e7dff38a9239d0fc4c9da967071f5ad449997

Authored by Gustavo Bernardo
1 parent 510f3e21

Delete user working properly [Issue: #6]

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>
@@ -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']