Tools
Strawberry provides some utility functions to help you build your GraphQL
server. All tools can be imported from strawberry.tools
🍓
create_type
Create a Strawberry type from a list of fields.
def create_type(name: str, fields: List[StrawberryField]) -> Type: ...
Example:
Python
import strawberryfrom strawberry.tools import create_type
@strawberry.fielddef hello(info) -> str: return "World"
def get_name(info) -> str: return info.context.user.name my_name = strawberry.field(name="myName", resolver=get_name)
Query = create_type("Query", [hello, my_name])
schema = strawberry.Schema(query=Query)
Schema
type Query { hello: String! myName: String!}
🍓
merge_types
Merge multiple Strawberry types into one. Example:
Python
import strawberryfrom strawberry.tools import merge_types
@strawberry.typeclass QueryA: @strawberry.field def perform_a(self) -> str: ...
@strawberry.typeclass QueryB: @strawberry.field def perform_b(self) -> str: ...
ComboQuery = merge_types("ComboQuery", (QueryB, QueryA))schema = strawberry.Schema(query=ComboQuery)
Schema
type ComboQuery { performB: String! performA: String!}