mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-31 04:46:26 -06:00
7699 fixes
This commit is contained in:
parent
7e6bb0e6bc
commit
8a63707386
@ -1,8 +1,6 @@
|
|||||||
from django.contrib.contenttypes.models import ContentType
|
from django.contrib.contenttypes.models import ContentType
|
||||||
from drf_spectacular.utils import extend_schema_field
|
from drf_spectacular.utils import extend_schema_field
|
||||||
from rest_framework import serializers
|
from rest_framework import serializers
|
||||||
|
|
||||||
from dcim.api.serializers_.sites import SiteSerializer
|
|
||||||
from netbox.api.fields import ChoiceField, ContentTypeField, RelatedObjectCountField
|
from netbox.api.fields import ChoiceField, ContentTypeField, RelatedObjectCountField
|
||||||
from netbox.api.serializers import NetBoxModelSerializer
|
from netbox.api.serializers import NetBoxModelSerializer
|
||||||
from tenancy.api.serializers_.tenants import TenantSerializer
|
from tenancy.api.serializers_.tenants import TenantSerializer
|
||||||
@ -51,7 +49,6 @@ class ClusterSerializer(NetBoxModelSerializer):
|
|||||||
group = ClusterGroupSerializer(nested=True, required=False, allow_null=True, default=None)
|
group = ClusterGroupSerializer(nested=True, required=False, allow_null=True, default=None)
|
||||||
status = ChoiceField(choices=ClusterStatusChoices, required=False)
|
status = ChoiceField(choices=ClusterStatusChoices, required=False)
|
||||||
tenant = TenantSerializer(nested=True, required=False, allow_null=True)
|
tenant = TenantSerializer(nested=True, required=False, allow_null=True)
|
||||||
site = SiteSerializer(nested=True, required=False, allow_null=True, default=None)
|
|
||||||
scope_type = ContentTypeField(
|
scope_type = ContentTypeField(
|
||||||
queryset=ContentType.objects.filter(
|
queryset=ContentType.objects.filter(
|
||||||
model__in=CLUSTER_SCOPE_TYPES
|
model__in=CLUSTER_SCOPE_TYPES
|
||||||
|
@ -81,5 +81,15 @@ class Migration(migrations.Migration):
|
|||||||
model_name='cluster',
|
model_name='cluster',
|
||||||
name='site',
|
name='site',
|
||||||
),
|
),
|
||||||
|
migrations.RemoveConstraint(
|
||||||
|
model_name='cluster',
|
||||||
|
name='virtualization_cluster_unique_site_name',
|
||||||
|
),
|
||||||
|
migrations.AddConstraint(
|
||||||
|
model_name='cluster',
|
||||||
|
constraint=models.UniqueConstraint(
|
||||||
|
fields=('_site', 'name'), name='virtualization_cluster_unique__site_name'
|
||||||
|
),
|
||||||
|
),
|
||||||
|
|
||||||
]
|
]
|
||||||
|
@ -148,8 +148,8 @@ class Cluster(ContactsMixin, PrimaryModel):
|
|||||||
name='%(app_label)s_%(class)s_unique_group_name'
|
name='%(app_label)s_%(class)s_unique_group_name'
|
||||||
),
|
),
|
||||||
models.UniqueConstraint(
|
models.UniqueConstraint(
|
||||||
fields=('site', 'name'),
|
fields=('_site', 'name'),
|
||||||
name='%(app_label)s_%(class)s_unique_site_name'
|
name='%(app_label)s_%(class)s_unique__site_name'
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
verbose_name = _('cluster')
|
verbose_name = _('cluster')
|
||||||
|
Loading…
Reference in New Issue
Block a user