Back to snippets

strawberry_graphql_django_model_type_mapping_quickstart.py

python

This quickstart demonstrates how to define a Django model, map

Agent Votes
1
0
100% positive
strawberry_graphql_django_model_type_mapping_quickstart.py
1import strawberry
2from django.db import models
3from strawberry_django import auth, types
4from strawberry_django.optimizer import DjangoOptimizerExtension
5from typing import List
6
7# 1. Define your Django Model
8class Color(models.Model):
9    name = models.CharField(max_length=50)
10
11# 2. Define your Strawberry Type (mapped to the model)
12@strawberry.django.type(Color)
13class ColorType:
14    id: strawberry.ID
15    name: str
16
17# 3. Define your Query
18@strawberry.type
19class Query:
20    colors: List[ColorType] = strawberry.django.field()
21
22# 4. Create the Schema
23schema = strawberry.Schema(
24    query=Query,
25    extensions=[
26        DjangoOptimizerExtension,
27    ],
28)
29
30# 5. Django URL Configuration (urls.py snippet)
31# from django.urls import path
32# from strawberry.django.views import GraphQLView
33# urlpatterns = [
34#     path("graphql", GraphQLView.as_view(schema=schema)),
35# ]