サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
今年の「かわいい」
scrapbox.io/graphql-ruby-ja
graphql-ruby はただのGraphQL処理系で、ウェブアプリケーション全体に影響を及ぼすものではありません。Rails的に言えば、 GraphqlController#execute というアクションを追加するだけですし、これすら rails generate graphql:install で雛形を生成できます。したがって、すでにRESTful APIで運用しているRailsアプリにもGraphQL APIを足すことは簡単ですし、それから徐々に移行していけばいいのです。 クライアントサイドも、ApolloやRelayなどの専用クライアントを使わず運用することは十分可能です。実際、KibelaでもApolloを導入したのは最初にGraphQL APIを導入してから1年近くたった後のことでした。それまでは、単に文字列をpost bodyで送ってJSONを返すエンドポイントとしてGr
Integration Test / Request Spec ではあくまでもactionのカバレッジを満たすために実行しています つまり疎通確認とactionにおける例外処理のみ spec/graphql/ に、KibelaSchema.execute() を行うspecを追加して必要な単位(queryのfieldやtype)ごとにテストしています test patternのカバレッジはargumentsの違いのみで、たとえばフィールドは全部指定するパターンを1つだけ行ってます .execute() の戻り値は #to_json() して rspec-json_matcher でexpectationを書いています resolverを直接呼ぶテストはしていません tips: RubyMineの場合、 queryを書くときのheredoc tokenを GRAQPHQL にすると、quer
GraphQLのクエリは多くの場合固定文字列なので、メモリにキャッシュするだけでも効果はあるはず ドキュメントにはないが、 MySchema.execute(document: GraphQL.parse(query)) でいけそう #parse(): https://github.com/rmosolgo/graphql-ruby/blob/master/lib/graphql.rb #execute(): https://github.com/rmosolgo/graphql-ruby/blob/master/lib/graphql/schema.rb #execute() の引数は Query#initialize()を見ろ、とある https://github.com/rmosolgo/graphql-ruby/blob/master/lib/graphql/query.rb
README / FAQ / GraphQL::Types::ISO8601DateTime / Analyzer API / Analyzer APIを使ってconnectionフィールドのfirstまたはlast argumentを必須パラメータにする (graphql-ruby 1.9) / Analyzer APIを使ってconnectionフィールドのfirstまたはlast argum
このページを最初にブックマークしてみませんか?
『Notes on GraphQL for Ruby』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く