mirror of
https://github.com/Nebucatnetzer/network_inventory.git
synced 2024-06-27 11:45:23 +02:00
add a delete button to the nets table
This commit is contained in:
parent
b06f7e961b
commit
bad049a521
|
@ -1,4 +1,5 @@
|
||||||
import django_tables2 as tables
|
import django_tables2 as tables
|
||||||
|
from django_tables2.utils import A
|
||||||
|
|
||||||
from core.tables import CoreTable
|
from core.tables import CoreTable
|
||||||
|
|
||||||
|
@ -10,6 +11,11 @@ class NetsTable(CoreTable):
|
||||||
id = tables.Column(visible=False)
|
id = tables.Column(visible=False)
|
||||||
name = tables.Column('Net', linkify=True)
|
name = tables.Column('Net', linkify=True)
|
||||||
customer = tables.Column('Customer', linkify=True)
|
customer = tables.Column('Customer', linkify=True)
|
||||||
|
delete = tables.LinkColumn('net_delete',
|
||||||
|
text='delete',
|
||||||
|
args=[A('pk')], attrs={
|
||||||
|
'a': {'class': 'delete material-icons', }
|
||||||
|
})
|
||||||
|
|
||||||
class Meta(CoreTable.Meta):
|
class Meta(CoreTable.Meta):
|
||||||
model = Net
|
model = Net
|
||||||
|
|
16
nets/templates/nets/net_confirm_delete.html
Normal file
16
nets/templates/nets/net_confirm_delete.html
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
{% extends "core/base.html" %}
|
||||||
|
{% block section_title %}Delete net{% endblock %}
|
||||||
|
{% block content %}
|
||||||
|
<div class="row">
|
||||||
|
<form method="post">{% csrf_token %}
|
||||||
|
<p>Are you sure you want to delete the net "{{ object }}"?</p>
|
||||||
|
<button type="submit" class="btn btn-danger">Delete</button>
|
||||||
|
<a href="{% url 'nets' 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>/nets/', views.nets_table_view,
|
path('customer/<int:pk>/nets/', views.nets_table_view,
|
||||||
name='nets'),
|
name='nets'),
|
||||||
path('net/<int:pk>/', views.net_detail_view, name='net'),
|
path('net/<int:pk>/', views.net_detail_view, name='net'),
|
||||||
|
path('delete/net/<int:pk>/', views.NetDeleteView.as_view(),
|
||||||
|
name='net_delete'),
|
||||||
]
|
]
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
from django.contrib.auth.decorators import login_required
|
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 get_object_or_404
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
|
from django.urls import reverse
|
||||||
|
from django.views.generic import DeleteView
|
||||||
from django_tables2 import RequestConfig
|
from django_tables2 import RequestConfig
|
||||||
|
|
||||||
from customers.decorators import customer_view_permission
|
from customers.decorators import customer_view_permission
|
||||||
|
@ -30,3 +32,10 @@ def net_detail_view(request, pk):
|
||||||
return render(request, 'nets/net_details.html',
|
return render(request, 'nets/net_details.html',
|
||||||
{'table': table,
|
{'table': table,
|
||||||
'net': net})
|
'net': net})
|
||||||
|
|
||||||
|
|
||||||
|
class NetDeleteView(LoginRequiredMixin, DeleteView):
|
||||||
|
model = Net
|
||||||
|
|
||||||
|
def get_success_url(self):
|
||||||
|
return reverse('nets', args=(self.object.customer.pk,))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user