1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Closes #1943: Relax uniqueness constraint on cluster names

This commit is contained in:
jeremystretch
2021-10-19 13:06:41 -04:00
parent 0afd3e6189
commit 8375995680
5 changed files with 30 additions and 5 deletions

View File

@ -44,9 +44,9 @@ class ClusterGroupSerializer(OrganizationalModelSerializer):
class ClusterSerializer(PrimaryModelSerializer):
url = serializers.HyperlinkedIdentityField(view_name='virtualization-api:cluster-detail')
type = NestedClusterTypeSerializer()
group = NestedClusterGroupSerializer(required=False, allow_null=True)
group = NestedClusterGroupSerializer(required=False, allow_null=True, default=None)
tenant = NestedTenantSerializer(required=False, allow_null=True)
site = NestedSiteSerializer(required=False, allow_null=True)
site = NestedSiteSerializer(required=False, allow_null=True, default=None)
device_count = serializers.IntegerField(read_only=True)
virtualmachine_count = serializers.IntegerField(read_only=True)

View File

@ -0,0 +1,21 @@
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('dcim', '0136_device_airflow'),
('virtualization', '0023_virtualmachine_natural_ordering'),
]
operations = [
migrations.AlterField(
model_name='cluster',
name='name',
field=models.CharField(max_length=100),
),
migrations.AlterUniqueTogether(
name='cluster',
unique_together={('site', 'name'), ('group', 'name')},
),
]

View File

@ -115,8 +115,7 @@ class Cluster(PrimaryModel):
A cluster of VirtualMachines. Each Cluster may optionally be associated with one or more Devices.
"""
name = models.CharField(
max_length=100,
unique=True
max_length=100
)
type = models.ForeignKey(
to=ClusterType,
@ -167,6 +166,10 @@ class Cluster(PrimaryModel):
class Meta:
ordering = ['name']
unique_together = (
('group', 'name'),
('site', 'name'),
)
def __str__(self):
return self.name