Sha256: 9287cfa95b5c84ec97daf15819c424664f448e162202aa5c4dd6aca85e01bb76
Contents?: true
Size: 1.32 KB
Versions: 2
Compression:
Stored size: 1.32 KB
Contents
require "rails/railtie" require "trailblazer/loader" module Trailblazer class Railtie < ::Rails::Railtie def self.load_concepts(app) Loader.new.(insert: [ModelFile, before: Loader::ConceptFiles]) { |file| require_dependency("#{app.root}/#{file}") } end # This is to autoload Operation::Dispatch, etc. I'm simply assuming people find this helpful in Rails. initializer "trailblazer.library_autoloading" do require "trailblazer/autoloading" end # thank you, http://stackoverflow.com/a/17573888/465070 initializer 'trailblazer.install', after: :load_config_initializers do |app| # the trb autoloading has to be run after initializers have been loaded, so we can tweak inclusion of features in # initializers. ActionDispatch::Reloader.to_prepare do Trailblazer::Railtie.load_concepts(app) end end # initializer "trailblazer.roar" do # require "trailblazer/rails/roar" #if Object.const_defined?(:Roar) # end initializer "trailblazer.application_controller" do require "trailblazer/rails/application_controller" end # Prepend model file, before the concept files like operation.rb get loaded. ModelFile = ->(input, options) do model = "app/models/#{options[:name]}.rb" File.exist?(model) ? [model]+input : input end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
trailblazer-rails-0.2.3 | lib/trailblazer/rails/railtie.rb |
trailblazer-rails-0.2.2 | lib/trailblazer/rails/railtie.rb |