최용우
Django-graphene에서 타입 이름 변경하기 본문
장고에서 GraphQL을 사용하기 위해선 타입을 지정해야한다.
여기서 말하는 타입이란 데이터베이스의 테이블 명세서 같은 개념이다.
즉, 스키마를 지정하고 이것을 GraphQL에게 알려주어야 한다.
아래 코드 예제를 보자.
1. types.py
#myapp/types.py
from graphene_django import DjangoObjectType
class MyType(DjangoObjectType):
class Meta:
model = MyType
name = 'My_Name_Hello' #내가 지정하고 싶은 타입 이름
2. queries.py
#myapp/queries.py
import graphene
mytypes = graphene.Field(MyType)
@login_required
def resolve_mytypes(self, info):
try:
return MyType.object.all()
except Exception as e:
raise e
3.schema.py
#myproject/schema.py
import graphene
from myapp.queries import Query as MyQuery
class Query(MyQuery, graphene.ObjectType):
pass
4.urls.py
#config/urls.py
from django.urls import path
from graphene_django.views import GraphQLView
urlpatterns = [
path("graphql/", GraphQLView.as_view(graphiql=True)),
]
단 몇줄의 코드로 GraphQL API를 완성하였다.
타입의 메타클래스에서 이름을 바꾸는 것으로 손쉽게 원하는 타입 이름을 지정할 수 있다.
'장고' 카테고리의 다른 글
| 장고 DRF(Django RestFramework) 필드 옵션 (0) | 2025.02.14 |
|---|---|
| Docker란? 그리고 필요한 이유 (2) | 2025.01.05 |
| Django에서 Graphql을 사용해보자 (1) | 2024.10.12 |
| 변수 이름 짓기 규칙(스네이크, 카멜, 파스칼, 케밥) (1) | 2024.09.27 |
| [Nginx]내가 배포한 웹사이트에 SSL 인증서 적용하기 (0) | 2024.07.31 |
