Допустим, у меня есть следующая схема GraphQL, написанная в графене,
class Query(graphene.ObjectType):
dummy_query = graphene.Field(String, name=graphene.String(required=True))
def resolve_dummy_query(self, info, name):
print(type(name))
return None
Я использую Flask для размещения этого API,
view_func = GraphQLView.as_view('graphql',
schema=graphene.Schema(query=Query),
graphiql=True)
app = Flask(__name__)
app.add_url_rule('/graphql', view_func=view_func)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=os.environ.get('PORT', 5000))
Ниже приведен запрос, который япредоставление с использованием GraphiQL
{
dummyQuery(name: "My name")
}
Когда выполняется функция разрешения, тип name
отображается как unicode
.
Есть ли способ указать преобразователь типа вопределение схемы, чтобы преобразовать его в str
, когда оно находится в функции разрешения?
Примечание:
- Я использую Python 2.7
- Iне могу вручную конвертировать его в
str
каждый раз, потому что приложение большое и есть много типов ввода, которые я хотел бы преобразовать в другие типы.