mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-27 02:48:38 -06:00
Finish application of site groups to config context
This commit is contained in:
parent
d8d6ff6249
commit
bbbc3f55e3
@ -5,9 +5,9 @@ from rest_framework import serializers
|
|||||||
|
|
||||||
from dcim.api.nested_serializers import (
|
from dcim.api.nested_serializers import (
|
||||||
NestedDeviceSerializer, NestedDeviceRoleSerializer, NestedPlatformSerializer, NestedRackSerializer,
|
NestedDeviceSerializer, NestedDeviceRoleSerializer, NestedPlatformSerializer, NestedRackSerializer,
|
||||||
NestedRegionSerializer, NestedSiteSerializer,
|
NestedRegionSerializer, NestedSiteSerializer, NestedSiteGroupSerializer,
|
||||||
)
|
)
|
||||||
from dcim.models import Device, DeviceRole, Platform, Rack, Region, Site
|
from dcim.models import Device, DeviceRole, Platform, Rack, Region, Site, SiteGroup
|
||||||
from extras.choices import *
|
from extras.choices import *
|
||||||
from extras.models import (
|
from extras.models import (
|
||||||
ConfigContext, CustomField, ExportTemplate, ImageAttachment, ObjectChange, JobResult, Tag,
|
ConfigContext, CustomField, ExportTemplate, ImageAttachment, ObjectChange, JobResult, Tag,
|
||||||
@ -166,6 +166,12 @@ class ConfigContextSerializer(ValidatedModelSerializer):
|
|||||||
required=False,
|
required=False,
|
||||||
many=True
|
many=True
|
||||||
)
|
)
|
||||||
|
site_groups = SerializedPKRelatedField(
|
||||||
|
queryset=SiteGroup.objects.all(),
|
||||||
|
serializer=NestedSiteGroupSerializer,
|
||||||
|
required=False,
|
||||||
|
many=True
|
||||||
|
)
|
||||||
sites = SerializedPKRelatedField(
|
sites = SerializedPKRelatedField(
|
||||||
queryset=Site.objects.all(),
|
queryset=Site.objects.all(),
|
||||||
serializer=NestedSiteSerializer,
|
serializer=NestedSiteSerializer,
|
||||||
@ -218,8 +224,9 @@ class ConfigContextSerializer(ValidatedModelSerializer):
|
|||||||
class Meta:
|
class Meta:
|
||||||
model = ConfigContext
|
model = ConfigContext
|
||||||
fields = [
|
fields = [
|
||||||
'id', 'url', 'name', 'weight', 'description', 'is_active', 'regions', 'sites', 'roles', 'platforms',
|
'id', 'url', 'name', 'weight', 'description', 'is_active', 'regions', 'site_groups', 'sites', 'roles',
|
||||||
'cluster_groups', 'clusters', 'tenant_groups', 'tenants', 'tags', 'data', 'created', 'last_updated',
|
'platforms', 'cluster_groups', 'clusters', 'tenant_groups', 'tenants', 'tags', 'data', 'created',
|
||||||
|
'last_updated',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ class ImageAttachmentViewSet(ModelViewSet):
|
|||||||
|
|
||||||
class ConfigContextViewSet(ModelViewSet):
|
class ConfigContextViewSet(ModelViewSet):
|
||||||
queryset = ConfigContext.objects.prefetch_related(
|
queryset = ConfigContext.objects.prefetch_related(
|
||||||
'regions', 'sites', 'roles', 'platforms', 'tenant_groups', 'tenants',
|
'regions', 'site_groups', 'sites', 'roles', 'platforms', 'tenant_groups', 'tenants',
|
||||||
)
|
)
|
||||||
serializer_class = serializers.ConfigContextSerializer
|
serializer_class = serializers.ConfigContextSerializer
|
||||||
filterset_class = filters.ConfigContextFilterSet
|
filterset_class = filters.ConfigContextFilterSet
|
||||||
|
@ -66,6 +66,20 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>Site Groups</td>
|
||||||
|
<td>
|
||||||
|
{% if object.site_groups.all %}
|
||||||
|
<ul>
|
||||||
|
{% for sitegroup in object.site_groups.all %}
|
||||||
|
<li><a href="{{ sitegroup.get_absolute_url }}">{{ sitegroup }}</a></li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
{% else %}
|
||||||
|
<span class="text-muted">None</span>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Sites</td>
|
<td>Sites</td>
|
||||||
<td>
|
<td>
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
<div class="panel-heading"><strong>Assignment</strong></div>
|
<div class="panel-heading"><strong>Assignment</strong></div>
|
||||||
<div class="panel-body">
|
<div class="panel-body">
|
||||||
{% render_field form.regions %}
|
{% render_field form.regions %}
|
||||||
|
{% render_field form.site_groups %}
|
||||||
{% render_field form.sites %}
|
{% render_field form.sites %}
|
||||||
{% render_field form.roles %}
|
{% render_field form.roles %}
|
||||||
{% render_field form.platforms %}
|
{% render_field form.platforms %}
|
||||||
|
Loading…
Reference in New Issue
Block a user