Sha256: dfe537248a355b541258913706e10af3e83b5f26d82f4786253da424a4a99a0b
Contents?: true
Size: 1.41 KB
Versions: 10
Compression:
Stored size: 1.41 KB
Contents
require "shamu/rack" require "shamu/json_api" module Shamu module Rails # Integrate Shamu with rails. class Railtie < ::Rails::Railtie rake_tasks do rake_path = File.expand_path( "../../tasks/*.rake" ) Dir[ rake_path ].each { |f| load f } end initializer "shamu.configure" do config.shamu = ActiveSupport::OrderedOptions.new config.shamu.json_api = ActiveSupport::OrderedOptions.new config.shamu.json_api.default_url_options = {} if defined? ::ActionController controller_classes = [ ::ActionController::Base ] controller_classes << ::ActionController::API if defined? ::ActionController::API controller_classes.each do |klass| klass.send :include, Shamu::Rails::Controller klass.send :include, Shamu::Rails::Entity klass.send :include, Shamu::Rails::Features end Mime::Type.register Shamu::JsonApi::MIME_TYPE, :json_api ActionController::Renderers.add :json_api do |obj, _options| self.content_type ||= Mime[:json_api] obj end end end initializer "shamu.insert_middleware" do |app| app.config.middleware.use Scorpion::Rack::Middleware app.config.middleware.use Shamu::Rack::CookiesMiddleware app.config.middleware.use Shamu::Rack::QueryParamsMiddleware end end end end
Version data entries
10 entries across 10 versions & 1 rubygems