Просмотр исходного кода

Add GraphQL type for ObjectType

Jeremy Stretch 2 лет назад
Родитель
Сommit
d538010069
2 измененных файлов с 16 добавлено и 6 удалено
  1. 6 6
      netbox/extras/graphql/types.py
  2. 10 0
      netbox/netbox/graphql/types.py

+ 6 - 6
netbox/extras/graphql/types.py

@@ -39,7 +39,7 @@ class CustomFieldType(ObjectType):
 
     class Meta:
         model = models.CustomField
-        exclude = ('object_types', 'object_type')
+        fields = '__all__'
         filterset_class = filtersets.CustomFieldFilterSet
 
 
@@ -55,7 +55,7 @@ class CustomLinkType(ObjectType):
 
     class Meta:
         model = models.CustomLink
-        exclude = ('object_types', )
+        fields = '__all__'
         filterset_class = filtersets.CustomLinkFilterSet
 
 
@@ -63,7 +63,7 @@ class EventRuleType(OrganizationalObjectType):
 
     class Meta:
         model = models.EventRule
-        exclude = ('object_types',)
+        fields = '__all__'
         filterset_class = filtersets.EventRuleFilterSet
 
 
@@ -71,7 +71,7 @@ class ExportTemplateType(ObjectType):
 
     class Meta:
         model = models.ExportTemplate
-        exclude = ('object_types', )
+        fields = '__all__'
         filterset_class = filtersets.ExportTemplateFilterSet
 
 
@@ -103,7 +103,7 @@ class SavedFilterType(ObjectType):
 
     class Meta:
         model = models.SavedFilter
-        exclude = ('object_types', )
+        fields = '__all__'
         filterset_class = filtersets.SavedFilterFilterSet
 
 
@@ -111,7 +111,7 @@ class TagType(ObjectType):
 
     class Meta:
         model = models.Tag
-        exclude = ('object_types', 'extras_taggeditem_items',)
+        exclude = ('extras_taggeditem_items',)
         filterset_class = filtersets.TagFilterSet
 
 

+ 10 - 0
netbox/netbox/graphql/types.py

@@ -1,5 +1,6 @@
 import graphene
 
+from core.models import ObjectType as ObjectType_
 from django.contrib.contenttypes.models import ContentType
 from extras.graphql.mixins import (
     ChangelogMixin,
@@ -11,7 +12,9 @@ from graphene_django import DjangoObjectType
 
 __all__ = (
     'BaseObjectType',
+    'ContentTypeType',
     'ObjectType',
+    'ObjectTypeType',
     'OrganizationalObjectType',
     'NetBoxObjectType',
 )
@@ -90,3 +93,10 @@ class ContentTypeType(DjangoObjectType):
     class Meta:
         model = ContentType
         fields = ('id', 'app_label', 'model')
+
+
+class ObjectTypeType(DjangoObjectType):
+
+    class Meta:
+        model = ObjectType_
+        fields = ('id', 'app_label', 'model')