mirror of
https://github.com/netbox-community/netbox.git
synced 2024-05-10 07:54:54 +00:00
#6732: Show sites table under ASN view
This commit is contained in:
@ -216,10 +216,13 @@ class ASNView(generic.ObjectView):
|
|||||||
queryset = ASN.objects.all()
|
queryset = ASN.objects.all()
|
||||||
|
|
||||||
def get_extra_context(self, request, instance):
|
def get_extra_context(self, request, instance):
|
||||||
sites = instance.sites.restrict(request.user, 'view').all()
|
sites = instance.sites.restrict(request.user, 'view')
|
||||||
|
sites_table = SiteTable(sites)
|
||||||
|
paginate_table(sites_table, request)
|
||||||
|
|
||||||
return {
|
return {
|
||||||
'sites': sites,
|
'sites_table': sites_table,
|
||||||
|
'sites_count': sites.count()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -6,15 +6,13 @@
|
|||||||
{% block breadcrumbs %}
|
{% block breadcrumbs %}
|
||||||
{{ block.super }}
|
{{ block.super }}
|
||||||
<li class="breadcrumb-item"><a href="{% url 'ipam:asn_list' %}?rir_id={{ object.rir.pk }}">{{ object.rir }}</a></li>
|
<li class="breadcrumb-item"><a href="{% url 'ipam:asn_list' %}?rir_id={{ object.rir.pk }}">{{ object.rir }}</a></li>
|
||||||
{% endblock %}
|
{% endblock breadcrumbs %}
|
||||||
|
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col col-md-6">
|
<div class="col col-md-6">
|
||||||
<div class="card">
|
<div class="card">
|
||||||
<h5 class="card-header">
|
<h5 class="card-header">ASN</h5>
|
||||||
ASN
|
|
||||||
</h5>
|
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<table class="table table-hover attr-table">
|
<table class="table table-hover attr-table">
|
||||||
<tr>
|
<tr>
|
||||||
@ -44,34 +42,37 @@
|
|||||||
<td>Description</td>
|
<td>Description</td>
|
||||||
<td>{{ object.description|placeholder }}</td>
|
<td>{{ object.description|placeholder }}</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Sites</td>
|
||||||
|
<td>
|
||||||
|
{% if sites_count %}
|
||||||
|
<a href="{% url 'dcim:site_list' %}?asn_id={{ object.pk }}">{{ sites_count }}</a>
|
||||||
|
{% else %}
|
||||||
|
{{ sites_count }}
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% include 'inc/panels/custom_fields.html' %}
|
|
||||||
{% include 'inc/panels/tags.html' with tags=object.tags.all url='ipam:asn_list' %}
|
|
||||||
{% plugin_left_page object %}
|
{% plugin_left_page object %}
|
||||||
</div>
|
</div>
|
||||||
<div class="col col-md-6">
|
<div class="col col-md-6">
|
||||||
<div class="card">
|
{% include 'inc/panels/custom_fields.html' %}
|
||||||
<h5 class="card-header">
|
{% include 'inc/panels/tags.html' with tags=object.tags.all url='ipam:asn_list' %}
|
||||||
Sites
|
|
||||||
</h5>
|
|
||||||
<div class='card-body'>
|
|
||||||
{% if sites %}
|
|
||||||
{% for site in sites %}
|
|
||||||
<a href="{{ site.get_absolute_url }}"><span class="badge bg-primary">{{ site }}</span></a>
|
|
||||||
{% endfor %}
|
|
||||||
{% else %}
|
|
||||||
<span class="text-muted">None</span>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% plugin_right_page object %}
|
{% plugin_right_page object %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="row mb-3">
|
<div class="row">
|
||||||
<div class="col col-md-12">
|
<div class="col col-md-12">
|
||||||
|
<div class="card">
|
||||||
|
<h5 class="card-header">Sites</h5>
|
||||||
|
<div class="card-body">
|
||||||
|
{% include 'inc/table.html' with table=sites_table %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% include 'inc/paginator.html' with paginator=sites_table.paginator page=sites_table.page %}
|
||||||
{% plugin_full_width_page object %}
|
{% plugin_full_width_page object %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock content %}
|
||||||
|
Reference in New Issue
Block a user