在我的项目中,我有一个名为的对象Workflows
,它与另一个名为DataSources
. 我非常接近能够使用 GraphQL Mutation 创建新工作流。这是相关的代码:
class DataSourceInput(graphene.InputObjectType):
id = graphene.Int()
database_name = graphene.String()
table_name = graphene.String()
@classmethod
def get_node(cls, id, context, info):
node = get_datasource(id)
return node
class CreateWorkflow(relay.ClientIDMutation):
class Input:
name = graphene.String()
description = graphene.String()
datasources = graphene.List(DataSourceInput)
workflow = graphene.Field(Workflow)
success = graphene.Boolean()
errors = graphene.String()
@classmethod
def mutate_and_get_payload(cls, input, context, info):
name = input.get('name')
description = input.get('description')
datasources = input.get('datasources')
try:
workflow = WorkflowModel.create(name, description, datasources)
return CreateWorkflow(workflow=workflow, success=True)
except Exception as e:
success = False
return CreateWorkflow(workflow=None, success=False, errors=str(e))
似乎失败的是提取我希望与我正在创建的新工作流相关联的数据源。我收到一条错误消息,上面写着“不可散列的类型:'dict'”
我不确切知道此错误消息暗示我做了什么。
任何想法将不胜感激!
罗伯特