チラシ裏日記上等!!新館スマートフォン用の表示で見るチラシ裏日記上等!!新館Webアプリケーションエンジニアの雑記帳。映画とかアニメとかの記事も書きます。GraphQLのPython実装「Graphene」に入門2019-01-31GraphQLのPython実装「Graphene」に入門python個人的にGraphQLの機運が高まってきたので、最近仕事で使っているPythonでの実装であるGrapheneに入門してみました。GraphQLについてGraphQLについては多くの入門記事があるのでここでは触れないのですが、id:gfxさん記事が凄くわかりやすいのでお薦めです。employment.en-japan.comそれを参照して登場人物を覚えたら公式のドキュメントに目を通すとよさそうです。graphql.github.ioGraphneのサンプルGrapheneを触っていきます。今回はシンプルに値を取得するクエリのqueryと値を更新するmutationのサンプルを作ってみました。今回のサンプルコードは次のURLにあります。github.comqueryqueryの凄く簡単な実装を次に示します。スキーマを定義します。いう変数が今回唯一のフィールドになります。メソッドで定義します。定義するのでタイポすると動かないので注意です。オブジェクトにセットしてクエリを実行できるオブジェクトにします。実際に値を取得するためのクエリは文字列で定義します。実行すると結果が得られます。継承したクラスで表現するのがおもしろいですね。フィールドとそれに対応するリゾルバを書くと言う流れが型になっているのでスキーマの定義自体はそんなに難しくなさそうです。Webアプリケーションで使用する場合はリゾルバで実際にデータソースから値を取得するコードを書くとよさそうです。mutationmutationのサンプルを次に示します。print(result.data['createShip'])mutationはちょっと登場人物が多いです。