diff --git a/netbox/circuits/graphql/types.py b/netbox/circuits/graphql/types.py index 36c6a6f3e..f8c73cac2 100644 --- a/netbox/circuits/graphql/types.py +++ b/netbox/circuits/graphql/types.py @@ -1,11 +1,14 @@ +from typing import List + import strawberry import strawberry_django - from circuits import models from dcim.graphql.mixins import CabledObjectMixin -from extras.graphql.mixins import CustomFieldsMixin, TagsMixin, ContactsMixin -from netbox.graphql.types import ObjectType, OrganizationalObjectType, NetBoxObjectType +from extras.graphql.mixins import ContactsMixin, CustomFieldsMixin, TagsMixin from tenancy.graphql.types import TenantType + +from netbox.graphql.types import NetBoxObjectType, ObjectType, OrganizationalObjectType + from .filters import * __all__ = ( @@ -76,3 +79,7 @@ class CircuitType(NetBoxObjectType, ContactsMixin): termination_z: CircuitTerminationType | None type: CircuitTypeType tenant: TenantType | None + + @strawberry_django.field + def terminations(self) -> List[CircuitTerminationType]: + return self.terminations.all() diff --git a/netbox/netbox/settings.py b/netbox/netbox/settings.py index d840f991f..082e29e35 100644 --- a/netbox/netbox/settings.py +++ b/netbox/netbox/settings.py @@ -738,6 +738,14 @@ if not ENABLE_LOCALIZATION: USE_I18N = False USE_L10N = False +# +# Strawberry (GraphQL) +# +STRAWBERRY_DJANGO = { + "TYPE_DESCRIPTION_FROM_MODEL_DOCSTRING": True, + # "GENERATE_ENUMS_FROM_CHOICES": True, +} + # # Plugins #