module Graphiti::Rails

Rails Integration. Mix this in to ApplicationController.

@see Base#render_jsonapi @see Base#wrap_context

Public Class Methods

included(klass) click to toggle source
# File lib/graphiti/rails.rb, line 10
def self.included(klass)
  backtrace = ::Rails::VERSION::MAJOR == 4 ? caller(2) : caller_locations(2)
  Graphiti::DEPRECATOR.deprecation_warning("Including Graphiti::Rails", "Use graphiti-rails instead. See https://www.graphiti.dev/guides/graphiti-rails-migration for details.", backtrace)

  klass.class_eval do
    include Graphiti::Context
    include GraphitiErrors
    around_action :wrap_context
    around_action :debug
  end
end

Public Instance Methods

debug() { || ... } click to toggle source
# File lib/graphiti/rails.rb, line 28
def debug
  Debugger.debug do
    yield
  end
end
jsonapi_context() click to toggle source
# File lib/graphiti/rails.rb, line 34
def jsonapi_context
  self
end
wrap_context() { || ... } click to toggle source
# File lib/graphiti/rails.rb, line 22
def wrap_context
  Graphiti.with_context(jsonapi_context, action_name.to_sym) do
    yield
  end
end