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)