Make assignment priority a required field

This commit is contained in:
jeremystretch 2021-11-02 13:15:23 -04:00
parent aeb4996ac2
commit 93da5a39be
3 changed files with 16 additions and 3 deletions

View File

@ -52,6 +52,14 @@ IPADDRESS_ROLES_NONUNIQUE = (
) )
#
# FHRP groups
#
FHRPGROUPASSIGNMENT_PRIORITY_MIN = 0
FHRPGROUPASSIGNMENT_PRIORITY_MAX = 255
# #
# VLANs # VLANs
# #

View File

@ -1,4 +1,5 @@
import django.core.serializers.json import django.core.serializers.json
import django.core.validators
from django.db import migrations, models from django.db import migrations, models
import django.db.models.deletion import django.db.models.deletion
import taggit.managers import taggit.managers
@ -44,7 +45,7 @@ class Migration(migrations.Migration):
('last_updated', models.DateTimeField(auto_now=True, null=True)), ('last_updated', models.DateTimeField(auto_now=True, null=True)),
('id', models.BigAutoField(primary_key=True, serialize=False)), ('id', models.BigAutoField(primary_key=True, serialize=False)),
('object_id', models.PositiveIntegerField()), ('object_id', models.PositiveIntegerField()),
('priority', models.PositiveSmallIntegerField(blank=True, null=True)), ('priority', models.PositiveSmallIntegerField(validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(255)])),
('content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.contenttype')), ('content_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='contenttypes.contenttype')),
('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ipam.fhrpgroup')), ('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='ipam.fhrpgroup')),
], ],

View File

@ -1,11 +1,13 @@
from django.contrib.contenttypes.fields import GenericForeignKey, GenericRelation from django.contrib.contenttypes.fields import GenericForeignKey, GenericRelation
from django.contrib.contenttypes.models import ContentType from django.contrib.contenttypes.models import ContentType
from django.core.validators import MaxValueValidator, MinValueValidator
from django.db import models from django.db import models
from django.urls import reverse from django.urls import reverse
from extras.utils import extras_features from extras.utils import extras_features
from netbox.models import ChangeLoggedModel, PrimaryModel from netbox.models import ChangeLoggedModel, PrimaryModel
from ipam.choices import * from ipam.choices import *
from ipam.constants import *
from utilities.querysets import RestrictedQuerySet from utilities.querysets import RestrictedQuerySet
__all__ = ( __all__ = (
@ -81,8 +83,10 @@ class FHRPGroupAssignment(ChangeLoggedModel):
on_delete=models.CASCADE on_delete=models.CASCADE
) )
priority = models.PositiveSmallIntegerField( priority = models.PositiveSmallIntegerField(
blank=True, validators=(
null=True MinValueValidator(FHRPGROUPASSIGNMENT_PRIORITY_MIN),
MaxValueValidator(FHRPGROUPASSIGNMENT_PRIORITY_MAX)
)
) )
objects = RestrictedQuerySet.as_manager() objects = RestrictedQuerySet.as_manager()