add a delete button to the users table
This commit is contained in:
parent
bad049a521
commit
1ddca51d77
|
@ -1,4 +1,5 @@
|
|||
import django_tables2 as tables
|
||||
from django_tables2.utils import A
|
||||
|
||||
from core.tables import CoreTable
|
||||
|
||||
|
@ -11,6 +12,11 @@ class UsersTable(CoreTable):
|
|||
customer = tables.Column('Customer', linkify=True)
|
||||
ad_groups = tables.ManyToManyColumn()
|
||||
mail_groups = tables.ManyToManyColumn()
|
||||
delete = tables.LinkColumn('user_delete',
|
||||
text='delete',
|
||||
args=[A('pk')], attrs={
|
||||
'a': {'class': 'delete material-icons', }
|
||||
})
|
||||
|
||||
class Meta(CoreTable.Meta):
|
||||
model = User
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
{% extends "core/base.html" %}
|
||||
{% block section_title %}Delete user{% endblock %}
|
||||
{% block content %}
|
||||
<div class="row">
|
||||
<form method="post">{% csrf_token %}
|
||||
<p>Are you sure you want to delete the user "{{ object }}"?</p>
|
||||
<button type="submit" class="btn btn-danger">Delete</button>
|
||||
<a href="{% url 'users' object.customer.pk %}" class="btn btn-primary">Cancel</a>
|
||||
<input type="hidden" id="previous_page" name="previous_page" value="/previous/page/url">
|
||||
</form>
|
||||
<script>
|
||||
prev = document.getElementById("previous_page");
|
||||
prev.value = document.referrer;
|
||||
</script>
|
||||
</div>
|
||||
{% endblock %}
|
|
@ -6,4 +6,6 @@ urlpatterns = [
|
|||
path('customer/<int:pk>/users/', views.users_table_view,
|
||||
name='users'),
|
||||
path('user/<int:pk>/', views.user_detail_view, name='user'),
|
||||
path('delete/user/<int:pk>/', views.UserDeleteView.as_view(),
|
||||
name='user_delete')
|
||||
]
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
from django.contrib.auth.decorators import login_required
|
||||
from django.contrib.auth.mixins import LoginRequiredMixin
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.shortcuts import render
|
||||
from django.urls import reverse
|
||||
from django.views.generic import DeleteView
|
||||
|
||||
from django_tables2 import RequestConfig
|
||||
|
||||
|
@ -40,3 +43,10 @@ def user_detail_view(request, pk):
|
|||
'mail_alias': mail_alias,
|
||||
'computers': computers,
|
||||
'licenses': licenses})
|
||||
|
||||
|
||||
class UserDeleteView(LoginRequiredMixin, DeleteView):
|
||||
model = User
|
||||
|
||||
def get_success_url(self):
|
||||
return reverse('users', args=(self.object.customer.pk,))
|
||||
|
|
Loading…
Reference in New Issue