From 675a989c7c3bdbe68ea521f63ee3ab763cf69e4a Mon Sep 17 00:00:00 2001 From: Jason Kraus Date: Thu, 28 Mar 2019 11:12:02 -0700 Subject: [PATCH] add DjangoFormMutation to cookbook example --- .../cookbook/ingredients/forms.py | 15 +++++++++++++++ .../cookbook/ingredients/schema.py | 17 +++++++++++++++++ examples/cookbook-plain/cookbook/schema.py | 7 ++++++- 3 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 examples/cookbook-plain/cookbook/ingredients/forms.py diff --git a/examples/cookbook-plain/cookbook/ingredients/forms.py b/examples/cookbook-plain/cookbook/ingredients/forms.py new file mode 100644 index 0000000..a4de459 --- /dev/null +++ b/examples/cookbook-plain/cookbook/ingredients/forms.py @@ -0,0 +1,15 @@ +from django import forms +from cookbook.ingredients.models import Category, Ingredient + + +class CategoryForm(forms.ModelForm): + class Meta: + model = Category + exclude = [] + + +class IngredientForm(forms.ModelForm): + class Meta: + model = Ingredient + exclude = [] + diff --git a/examples/cookbook-plain/cookbook/ingredients/schema.py b/examples/cookbook-plain/cookbook/ingredients/schema.py index e7ef688..befeea5 100644 --- a/examples/cookbook-plain/cookbook/ingredients/schema.py +++ b/examples/cookbook-plain/cookbook/ingredients/schema.py @@ -1,7 +1,9 @@ import graphene from graphene_django.types import DjangoObjectType +from graphene_django.forms.mutation import DjangoFormMutation from .models import Category, Ingredient +from .forms import CategoryForm, IngredientForm class CategoryType(DjangoObjectType): @@ -49,3 +51,18 @@ class Query(object): return Ingredient.objects.get(name=name) return None + + +class CategoryMutation(DjangoFormMutation): + class Meta: + form_class = CategoryForm + + +class IngredientMutation(DjangoFormMutation): + class Meta: + form_class = IngredientForm + + +class Mutation(object): + category = CategoryMutation.Field() + ingredient = IngredientMutation.Field() diff --git a/examples/cookbook-plain/cookbook/schema.py b/examples/cookbook-plain/cookbook/schema.py index f8606a7..245ee9b 100644 --- a/examples/cookbook-plain/cookbook/schema.py +++ b/examples/cookbook-plain/cookbook/schema.py @@ -11,4 +11,9 @@ class Query(cookbook.ingredients.schema.Query, debug = graphene.Field(DjangoDebug, name='__debug') -schema = graphene.Schema(query=Query) +class Mutation(cookbook.ingredients.schema.Mutation, + graphene.ObjectType): + pass + + +schema = graphene.Schema(query=Query, mutation=Mutation)