mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-23 04:22:01 -06:00
9856 fix OrganizationalObjectType
This commit is contained in:
parent
0312ec3249
commit
7c289aebc7
@ -520,10 +520,6 @@ class InventoryItemRoleType(OrganizationalObjectType):
|
||||
)
|
||||
class LocationType(VLANGroupsMixin, ImageAttachmentsMixin, ContactsMixin, OrganizationalObjectType):
|
||||
|
||||
@strawberry_django.field
|
||||
def children(self) -> List[Annotated["LocationType", strawberry.lazy('dcim.graphql.types')]]:
|
||||
return self.children.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def powerpanel_set(self) -> List[Annotated["PowerPanelType", strawberry.lazy('dcim.graphql.types')]]:
|
||||
return self.powerpanel_set.all()
|
||||
@ -540,10 +536,6 @@ class LocationType(VLANGroupsMixin, ImageAttachmentsMixin, ContactsMixin, Organi
|
||||
def vlan_groups(self) -> List[Annotated["VLANGroupType", strawberry.lazy('ipam.graphql.types')]]:
|
||||
return self.vlan_groups.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def parent(self) -> Annotated["LocationType", strawberry.lazy('dcim.graphql.types')] | None:
|
||||
return self.parent
|
||||
|
||||
@strawberry_django.field
|
||||
def devices(self) -> List[Annotated["DeviceType", strawberry.lazy('dcim.graphql.types')]]:
|
||||
return self.devices.all()
|
||||
@ -844,18 +836,10 @@ class RearPortTemplateType(ComponentTemplateObjectType):
|
||||
)
|
||||
class RegionType(VLANGroupsMixin, ContactsMixin, OrganizationalObjectType):
|
||||
|
||||
@strawberry_django.field
|
||||
def parent(self) -> Annotated["RegionType", strawberry.lazy('dcim.graphql.types')]:
|
||||
return self.region
|
||||
|
||||
@strawberry_django.field
|
||||
def sites(self) -> List[Annotated["SiteType", strawberry.lazy('dcim.graphql.types')]]:
|
||||
return self.sites.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def children(self) -> List[Annotated["RegionType", strawberry.lazy('dcim.graphql.types')]]:
|
||||
return self.children.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def vlan_groups(self) -> List[Annotated["VLANGroupType", strawberry.lazy('ipam.graphql.types')]]:
|
||||
return self.vlan_groups.all()
|
||||
@ -929,14 +913,6 @@ class SiteType(VLANGroupsMixin, ImageAttachmentsMixin, ContactsMixin, NetBoxObje
|
||||
)
|
||||
class SiteGroupType(VLANGroupsMixin, ContactsMixin, OrganizationalObjectType):
|
||||
|
||||
@strawberry_django.field
|
||||
def parent(self) -> Annotated["SiteGroupType", strawberry.lazy('dcim.graphql.types')]:
|
||||
return self.region
|
||||
|
||||
@strawberry_django.field
|
||||
def children(self) -> List[Annotated["SiteGroupType", strawberry.lazy('dcim.graphql.types')]]:
|
||||
return self.children.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def sites(self) -> List[Annotated["SiteType", strawberry.lazy('dcim.graphql.types')]]:
|
||||
return self.sites.all()
|
||||
|
@ -1,3 +1,5 @@
|
||||
from typing import Annotated, List
|
||||
|
||||
import strawberry
|
||||
from strawberry import auto
|
||||
import strawberry_django
|
||||
@ -64,7 +66,13 @@ class OrganizationalObjectType(
|
||||
"""
|
||||
Base type for organizational models
|
||||
"""
|
||||
pass
|
||||
@strawberry_django.field
|
||||
def parent(self) -> Annotated["LocationType", strawberry.lazy('dcim.graphql.types')] | None:
|
||||
return self.parent
|
||||
|
||||
@strawberry_django.field
|
||||
def children(self) -> List[Annotated["WirelessLANGroupType", strawberry.lazy('wireless.graphql.types')]]:
|
||||
return self.children.all()
|
||||
|
||||
|
||||
class NetBoxObjectType(
|
||||
|
@ -141,18 +141,10 @@ class TenantType(NetBoxObjectType):
|
||||
)
|
||||
class TenantGroupType(OrganizationalObjectType):
|
||||
|
||||
@strawberry_django.field
|
||||
def parent(self) -> Annotated["TenantGroupType", strawberry.lazy('tenancy.graphql.types')]:
|
||||
return self.parent
|
||||
|
||||
@strawberry_django.field
|
||||
def tenants(self) -> List[TenantType]:
|
||||
return self.tenants.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def children(self) -> List[Annotated["TenantGroupType", strawberry.lazy('tenancy.graphql.types')]]:
|
||||
return self.children.all()
|
||||
|
||||
|
||||
#
|
||||
# Contacts
|
||||
@ -190,18 +182,10 @@ class ContactRoleType(ContactAssignmentsMixin, OrganizationalObjectType):
|
||||
)
|
||||
class ContactGroupType(OrganizationalObjectType):
|
||||
|
||||
@strawberry_django.field
|
||||
def parent(self) -> Annotated["ContactGroupType", strawberry.lazy('tenancy.graphql.types')]:
|
||||
return self.parent
|
||||
|
||||
@strawberry_django.field
|
||||
def contacts(self) -> List[ContactType]:
|
||||
return self.clusters.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def children(self) -> List[Annotated["ContactGroupType", strawberry.lazy('tenancy.graphql.types')]]:
|
||||
return self.children.all()
|
||||
|
||||
|
||||
@strawberry_django.type(
|
||||
models.ContactAssignment,
|
||||
|
@ -22,18 +22,10 @@ __all__ = (
|
||||
)
|
||||
class WirelessLANGroupType(OrganizationalObjectType):
|
||||
|
||||
@strawberry_django.field
|
||||
def parent(self) -> Annotated["WirelessLANGroupType", strawberry.lazy('wireless.graphql.types')]:
|
||||
return self.parent
|
||||
|
||||
@strawberry_django.field
|
||||
def wireless_lans(self) -> List[Annotated["WirelessLANType", strawberry.lazy('wireless.graphql.types')]]:
|
||||
return self.wireless_lans.all()
|
||||
|
||||
@strawberry_django.field
|
||||
def children(self) -> List[Annotated["WirelessLANGroupType", strawberry.lazy('wireless.graphql.types')]]:
|
||||
return self.children.all()
|
||||
|
||||
|
||||
@strawberry_django.type(
|
||||
models.WirelessLAN,
|
||||
|
Loading…
Reference in New Issue
Block a user