class SequelRails::Railtie

Public Instance Methods

check_skip_connect_conditions(app) click to toggle source
# File lib/sequel_rails/railtie.rb, line 110
def check_skip_connect_conditions(app)
  app.config.sequel[:skip_connect] ||= database_create_command?
end
configure_sequel(app) click to toggle source

Support overwriting crucial steps in subclasses

# File lib/sequel_rails/railtie.rb, line 82
def configure_sequel(app)
  rails_db_config = begin
    app.config.database_configuration
  rescue RuntimeError => e
    raise unless e.message =~ /Cannot load database configuration/

    {} # will try to use DATABASE_URL
  rescue Errno::ENOENT
    {} # will try to use DATABASE_URL
  end

  app.config.sequel.merge!(
    :root => ::Rails.root,
    :raw => rails_db_config
  )
  ::SequelRails.configuration = app.config.sequel
end
database_connection_required?(app) click to toggle source
# File lib/sequel_rails/railtie.rb, line 114
def database_connection_required?(app)
  !app.config.sequel[:skip_connect]
end
database_create_command?() click to toggle source
# File lib/sequel_rails/railtie.rb, line 118
def database_create_command?
  ['db:create', 'db:create:all'].any? { |c| Rake.application.top_level_tasks.include?(c) }
end
setup_controller_runtime() click to toggle source
# File lib/sequel_rails/railtie.rb, line 105
def setup_controller_runtime
  require 'sequel_rails/railties/controller_runtime'
  ActionController::Base.send :include, SequelRails::Railties::ControllerRuntime
end
setup_i18n_support() click to toggle source
# File lib/sequel_rails/railtie.rb, line 100
def setup_i18n_support
  ::Sequel::Model.send :extend, ::ActiveModel::Translation
  ::Sequel::Model.send :extend, ::SequelRails::I18nSupport
end