Closes #2836: Deprecate NullableCharField

This commit is contained in:
Jeremy Stretch 2019-02-14 09:39:04 -05:00
parent d95b127378
commit fdbef8ee71
3 changed files with 46 additions and 6 deletions

View File

@ -0,0 +1,38 @@
# Generated by Django 2.1.5 on 2019-02-14 14:26
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('dcim', '0068_rack_new_fields'),
]
operations = [
migrations.AlterField(
model_name='device',
name='asset_tag',
field=models.CharField(blank=True, max_length=50, null=True, unique=True),
),
migrations.AlterField(
model_name='device',
name='name',
field=models.CharField(blank=True, max_length=64, null=True, unique=True),
),
migrations.AlterField(
model_name='inventoryitem',
name='asset_tag',
field=models.CharField(blank=True, max_length=50, null=True, unique=True),
),
migrations.AlterField(
model_name='rack',
name='asset_tag',
field=models.CharField(blank=True, max_length=50, null=True, unique=True),
),
migrations.AlterField(
model_name='rack',
name='facility_id',
field=models.CharField(blank=True, max_length=50, null=True),
),
]

View File

@ -16,7 +16,7 @@ from taggit.managers import TaggableManager
from timezone_field import TimeZoneField from timezone_field import TimeZoneField
from extras.models import ConfigContextModel, CustomFieldModel, ObjectChange from extras.models import ConfigContextModel, CustomFieldModel, ObjectChange
from utilities.fields import ColorField, NullableCharField from utilities.fields import ColorField
from utilities.managers import NaturalOrderingManager from utilities.managers import NaturalOrderingManager
from utilities.models import ChangeLoggedModel from utilities.models import ChangeLoggedModel
from utilities.utils import serialize_object, to_meters from utilities.utils import serialize_object, to_meters
@ -470,7 +470,7 @@ class Rack(ChangeLoggedModel, CustomFieldModel):
name = models.CharField( name = models.CharField(
max_length=50 max_length=50
) )
facility_id = NullableCharField( facility_id = models.CharField(
max_length=50, max_length=50,
blank=True, blank=True,
null=True, null=True,
@ -511,7 +511,7 @@ class Rack(ChangeLoggedModel, CustomFieldModel):
blank=True, blank=True,
verbose_name='Serial number' verbose_name='Serial number'
) )
asset_tag = NullableCharField( asset_tag = models.CharField(
max_length=50, max_length=50,
blank=True, blank=True,
null=True, null=True,
@ -1354,7 +1354,7 @@ class Device(ChangeLoggedModel, ConfigContextModel, CustomFieldModel):
blank=True, blank=True,
null=True null=True
) )
name = NullableCharField( name = models.CharField(
max_length=64, max_length=64,
blank=True, blank=True,
null=True, null=True,
@ -1365,7 +1365,7 @@ class Device(ChangeLoggedModel, ConfigContextModel, CustomFieldModel):
blank=True, blank=True,
verbose_name='Serial number' verbose_name='Serial number'
) )
asset_tag = NullableCharField( asset_tag = models.CharField(
max_length=50, max_length=50,
blank=True, blank=True,
null=True, null=True,
@ -2389,7 +2389,7 @@ class InventoryItem(ComponentModel):
verbose_name='Serial number', verbose_name='Serial number',
blank=True blank=True
) )
asset_tag = NullableCharField( asset_tag = models.CharField(
max_length=50, max_length=50,
unique=True, unique=True,
blank=True, blank=True,

View File

@ -10,6 +10,8 @@ ColorValidator = RegexValidator(
) )
# Deprecated: Retained only to ensure successful migration from early releases
# Use models.CharField(null=True) instead
class NullableCharField(models.CharField): class NullableCharField(models.CharField):
description = "Stores empty values as NULL rather than ''" description = "Stores empty values as NULL rather than ''"