Show related objects under owner view

This commit is contained in:
Jeremy Stretch
2025-10-22 12:43:41 -04:00
parent a4b8862a7b
commit 77117a2487
12 changed files with 105 additions and 101 deletions

View File

@@ -13,56 +13,56 @@ class Migration(migrations.Migration):
model_name='circuit', model_name='circuit',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='circuitgroup', model_name='circuitgroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='circuittype', model_name='circuittype',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='provider', model_name='provider',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='provideraccount', model_name='provideraccount',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='providernetwork', model_name='providernetwork',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='virtualcircuit', model_name='virtualcircuit',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='virtualcircuittype', model_name='virtualcircuittype',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]

View File

@@ -3,7 +3,6 @@ from django.db import migrations, models
class Migration(migrations.Migration): class Migration(migrations.Migration):
dependencies = [ dependencies = [
('core', '0019_configrevision_active'), ('core', '0019_configrevision_active'),
('users', '0015_owner'), ('users', '0015_owner'),
@@ -14,11 +13,7 @@ class Migration(migrations.Migration):
model_name='datasource', model_name='datasource',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
null=True,
on_delete=django.db.models.deletion.PROTECT,
related_name='+',
to='users.owner',
), ),
), ),
] ]

View File

@@ -13,231 +13,231 @@ class Migration(migrations.Migration):
model_name='cable', model_name='cable',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='consoleport', model_name='consoleport',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='consoleserverport', model_name='consoleserverport',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='device', model_name='device',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='devicebay', model_name='devicebay',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='devicerole', model_name='devicerole',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='devicetype', model_name='devicetype',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='frontport', model_name='frontport',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='interface', model_name='interface',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='inventoryitem', model_name='inventoryitem',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='inventoryitemrole', model_name='inventoryitemrole',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='location', model_name='location',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='macaddress', model_name='macaddress',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='manufacturer', model_name='manufacturer',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='module', model_name='module',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='modulebay', model_name='modulebay',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='moduletype', model_name='moduletype',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='moduletypeprofile', model_name='moduletypeprofile',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='platform', model_name='platform',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='powerfeed', model_name='powerfeed',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='poweroutlet', model_name='poweroutlet',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='powerpanel', model_name='powerpanel',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='powerport', model_name='powerport',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='rack', model_name='rack',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='rackreservation', model_name='rackreservation',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='rackrole', model_name='rackrole',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='racktype', model_name='racktype',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='rearport', model_name='rearport',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='region', model_name='region',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='site', model_name='site',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='sitegroup', model_name='sitegroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='virtualchassis', model_name='virtualchassis',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='virtualdevicecontext', model_name='virtualdevicecontext',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]

View File

@@ -13,77 +13,77 @@ class Migration(migrations.Migration):
model_name='configcontext', model_name='configcontext',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='configcontextprofile', model_name='configcontextprofile',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='configtemplate', model_name='configtemplate',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='customfield', model_name='customfield',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='customfieldchoiceset', model_name='customfieldchoiceset',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='customlink', model_name='customlink',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='eventrule', model_name='eventrule',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='exporttemplate', model_name='exporttemplate',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='savedfilter', model_name='savedfilter',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='tag', model_name='tag',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='webhook', model_name='webhook',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]

View File

@@ -13,112 +13,112 @@ class Migration(migrations.Migration):
model_name='aggregate', model_name='aggregate',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='asn', model_name='asn',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='asnrange', model_name='asnrange',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='fhrpgroup', model_name='fhrpgroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='ipaddress', model_name='ipaddress',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='iprange', model_name='iprange',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='prefix', model_name='prefix',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='rir', model_name='rir',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='role', model_name='role',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='routetarget', model_name='routetarget',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='service', model_name='service',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='servicetemplate', model_name='servicetemplate',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='vlan', model_name='vlan',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='vlangroup', model_name='vlangroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='vlantranslationpolicy', model_name='vlantranslationpolicy',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='vrf', model_name='vrf',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]

View File

@@ -19,7 +19,6 @@ class OwnerMixin(models.Model):
owner = models.ForeignKey( owner = models.ForeignKey(
to='users.Owner', to='users.Owner',
on_delete=models.PROTECT, on_delete=models.PROTECT,
related_name='+',
blank=True, blank=True,
null=True null=True
) )

View File

@@ -19,8 +19,6 @@
</tr> </tr>
</table> </table>
</div> </div>
</div>
<div class="col-md-6">
<div class="card"> <div class="card">
<h2 class="card-header">{% trans "Groups" %}</h2> <h2 class="card-header">{% trans "Groups" %}</h2>
<div class="list-group list-group-flush"> <div class="list-group list-group-flush">
@@ -42,5 +40,8 @@
</div> </div>
</div> </div>
</div> </div>
<div class="col-md-6">
{% include 'inc/panels/related_objects.html' with filter_name='owner_id' %}
</div>
</div> </div>
{% endblock %} {% endblock %}

View File

@@ -13,35 +13,35 @@ class Migration(migrations.Migration):
model_name='contact', model_name='contact',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='contactgroup', model_name='contactgroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='contactrole', model_name='contactrole',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='tenant', model_name='tenant',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='tenantgroup', model_name='tenantgroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]

View File

@@ -4,7 +4,7 @@ from core.models import ObjectChange
from core.tables import ObjectChangeTable from core.tables import ObjectChangeTable
from netbox.object_actions import AddObject, BulkDelete, BulkEdit, BulkExport, BulkImport, BulkRename from netbox.object_actions import AddObject, BulkDelete, BulkEdit, BulkExport, BulkImport, BulkRename
from netbox.views import generic from netbox.views import generic
from utilities.views import register_model_view from utilities.views import GetRelatedModelsMixin, register_model_view
from . import filtersets, forms, tables from . import filtersets, forms, tables
from .models import Group, User, ObjectPermission, Owner, Token from .models import Group, User, ObjectPermission, Owner, Token
@@ -246,10 +246,19 @@ class OwnerListView(generic.ObjectListView):
@register_model_view(Owner) @register_model_view(Owner)
class OwnerView(generic.ObjectView): class OwnerView(GetRelatedModelsMixin, generic.ObjectView):
queryset = Owner.objects.all() queryset = Owner.objects.all()
template_name = 'users/owner.html' template_name = 'users/owner.html'
def get_extra_context(self, request, instance):
return {
'related_models': self.get_related_models(
request,
instance,
omit=(Group, User),
),
}
@register_model_view(Owner, 'add', detail=False) @register_model_view(Owner, 'add', detail=False)
@register_model_view(Owner, 'edit') @register_model_view(Owner, 'edit')

View File

@@ -13,42 +13,42 @@ class Migration(migrations.Migration):
model_name='cluster', model_name='cluster',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='clustergroup', model_name='clustergroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='clustertype', model_name='clustertype',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='virtualdisk', model_name='virtualdisk',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='virtualmachine', model_name='virtualmachine',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='vminterface', model_name='vminterface',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]

View File

@@ -13,56 +13,56 @@ class Migration(migrations.Migration):
model_name='ikepolicy', model_name='ikepolicy',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='ikeproposal', model_name='ikeproposal',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='ipsecpolicy', model_name='ipsecpolicy',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='ipsecprofile', model_name='ipsecprofile',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='ipsecproposal', model_name='ipsecproposal',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='l2vpn', model_name='l2vpn',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='tunnel', model_name='tunnel',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='tunnelgroup', model_name='tunnelgroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]

View File

@@ -13,21 +13,21 @@ class Migration(migrations.Migration):
model_name='wirelesslan', model_name='wirelesslan',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='wirelesslangroup', model_name='wirelesslangroup',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
migrations.AddField( migrations.AddField(
model_name='wirelesslink', model_name='wirelesslink',
name='owner', name='owner',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='users.owner' blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='users.owner'
), ),
), ),
] ]