mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-23 04:22:01 -06:00
Fixes #13741: Enforce unique names for inventory items with no parent item
This commit is contained in:
parent
9aa7444bf9
commit
68966db23d
17
netbox/dcim/migrations/0182_inventoryitem_uniqueness_fix.py
Normal file
17
netbox/dcim/migrations/0182_inventoryitem_uniqueness_fix.py
Normal file
@ -0,0 +1,17 @@
|
||||
# Generated by Django 4.2.5 on 2023-09-15 14:20
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('dcim', '0181_rename_device_role_device_role'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddConstraint(
|
||||
model_name='inventoryitem',
|
||||
constraint=models.UniqueConstraint(condition=models.Q(('parent__isnull', True)), fields=('device', 'name'), name='dcim_inventoryitem_unique_device_name'),
|
||||
),
|
||||
]
|
@ -1246,6 +1246,11 @@ class InventoryItem(MPTTModel, ComponentModel, TrackingModelMixin):
|
||||
fields=('device', 'parent', 'name'),
|
||||
name='%(app_label)s_%(class)s_unique_device_parent_name'
|
||||
),
|
||||
models.UniqueConstraint(
|
||||
fields=('device', 'name'),
|
||||
name='%(app_label)s_%(class)s_unique_device_name',
|
||||
condition=Q(parent__isnull=True)
|
||||
),
|
||||
)
|
||||
verbose_name = _('inventory item')
|
||||
verbose_name_plural = _('inventory items')
|
||||
|
Loading…
Reference in New Issue
Block a user