7699 _sitegroup -> _site_group

This commit is contained in:
Arthur Hanson 2024-10-30 12:07:13 -07:00
parent 5c022f0ae2
commit 88aa554477
4 changed files with 12 additions and 12 deletions

View File

@ -2354,13 +2354,13 @@ class ScopedFilterSet(BaseFilterSet):
) )
site_group_id = TreeNodeMultipleChoiceFilter( site_group_id = TreeNodeMultipleChoiceFilter(
queryset=SiteGroup.objects.all(), queryset=SiteGroup.objects.all(),
field_name='_sitegroup', field_name='_site_group',
lookup_expr='in', lookup_expr='in',
label=_('Site group (ID)'), label=_('Site group (ID)'),
) )
site_group = TreeNodeMultipleChoiceFilter( site_group = TreeNodeMultipleChoiceFilter(
queryset=SiteGroup.objects.all(), queryset=SiteGroup.objects.all(),
field_name='_sitegroup', field_name='_site_group',
lookup_expr='in', lookup_expr='in',
to_field_name='slug', to_field_name='slug',
label=_('Site group (slug)'), label=_('Site group (slug)'),

View File

@ -75,7 +75,7 @@ class CachedScopeMixin(models.Model):
blank=True, blank=True,
null=True null=True
) )
_sitegroup = models.ForeignKey( _site_group = models.ForeignKey(
to='dcim.SiteGroup', to='dcim.SiteGroup',
on_delete=models.CASCADE, on_delete=models.CASCADE,
related_name='_%(class)ss', related_name='_%(class)ss',
@ -93,20 +93,20 @@ class CachedScopeMixin(models.Model):
super().save(*args, **kwargs) super().save(*args, **kwargs)
def cache_related_objects(self): def cache_related_objects(self):
self._region = self._sitegroup = self._site = self._location = None self._region = self._site_group = self._site = self._location = None
if self.scope_type: if self.scope_type:
scope_type = self.scope_type.model_class() scope_type = self.scope_type.model_class()
if scope_type == apps.get_model('dcim', 'region'): if scope_type == apps.get_model('dcim', 'region'):
self._region = self.scope self._region = self.scope
elif scope_type == apps.get_model('dcim', 'sitegroup'): elif scope_type == apps.get_model('dcim', 'sitegroup'):
self._sitegroup = self.scope self._site_group = self.scope
elif scope_type == apps.get_model('dcim', 'site'): elif scope_type == apps.get_model('dcim', 'site'):
self._region = self.scope.region self._region = self.scope.region
self._sitegroup = self.scope.group self._site_group = self.scope.group
self._site = self.scope self._site = self.scope
elif scope_type == apps.get_model('dcim', 'location'): elif scope_type == apps.get_model('dcim', 'location'):
self._region = self.scope.site.region self._region = self.scope.site.region
self._sitegroup = self.scope.site.group self._site_group = self.scope.site.group
self._site = self.scope.site self._site = self.scope.site
self._location = self.scope self._location = self.scope
cache_related_objects.alters_data = True cache_related_objects.alters_data = True

View File

@ -31,7 +31,7 @@ class ComponentType(NetBoxObjectType):
@strawberry_django.type( @strawberry_django.type(
models.Cluster, models.Cluster,
exclude=('scope_type', 'scope_id', '_location', '_region', '_site', '_sitegroup'), exclude=('scope_type', 'scope_id', '_location', '_region', '_site', '_site_group'),
filters=ClusterFilter filters=ClusterFilter
) )
class ClusterType(VLANGroupsMixin, NetBoxObjectType): class ClusterType(VLANGroupsMixin, NetBoxObjectType):

View File

@ -4,18 +4,18 @@ from django.db import migrations, models
def populate_denormalized_fields(apps, schema_editor): def populate_denormalized_fields(apps, schema_editor):
""" """
Copy site ForeignKey values to the scope GFK. Copy the denormalized fields for _region, _site_group and _site from existing site field.
""" """
Cluster = apps.get_model('virtualization', 'Cluster') Cluster = apps.get_model('virtualization', 'Cluster')
clusters = Cluster.objects.filter(site__isnull=False).prefetch_related('site') clusters = Cluster.objects.filter(site__isnull=False).prefetch_related('site')
for cluster in clusters: for cluster in clusters:
cluster._region_id = cluster.site.region_id cluster._region_id = cluster.site.region_id
cluster._sitegroup_id = cluster.site.group_id cluster._site_group_id = cluster.site.group_id
cluster._site_id = cluster.site_id cluster._site_id = cluster.site_id
# Note: Location cannot be set prior to migration # Note: Location cannot be set prior to migration
Cluster.objects.bulk_update(clusters, ['_region', '_sitegroup', '_site']) Cluster.objects.bulk_update(clusters, ['_region', '_site_group', '_site'])
class Migration(migrations.Migration): class Migration(migrations.Migration):
@ -60,7 +60,7 @@ class Migration(migrations.Migration):
), ),
migrations.AddField( migrations.AddField(
model_name='cluster', model_name='cluster',
name='_sitegroup', name='_site_group',
field=models.ForeignKey( field=models.ForeignKey(
blank=True, blank=True,
null=True, null=True,