Quiero deshabilitar ActiveRecord en Rails 4. Hice lo siguiente en config/application.rb
require File.expand_path('../boot', __FILE__)
# require 'rails/all'  -- commented
require "action_controller/railtie"
require "action_mailer/railtie"
#require "active_resource/railtie" no need
#require "rails/test_unit/railtie" no need
#require "sprockets/railtie" no need
# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(:default, Rails.env)
module MyApp
  class Application < Rails::Application
     config.app_middleware.delete "ActiveRecord::ConnectionAdapters::ConnectionManagement"
  end
end
Por tengo un error de
/home/alex/.rvm/gems/ruby-2.0.0-p247/gems/railties-4.0.0/lib/rails/railtie/configuration.rb:95:in 
  method_missing: undefined method active_record for #<Rails::Application::Configuration:0x00000002005c38> (NoMethodError)
                
                    
                        ruby-on-rails
                                ruby
                                ruby-on-rails-4
                                
                    
                    
                        ア レ ッ ク ス
fuente
                
                fuente

rails new ... -Opara deshabilitar activerecord?Respuestas:
Si está creando una nueva aplicación, puede usar
-Opara omitir ActiveRecord:Para aplicaciones existentes:
1. Elimine las gemas del adaptador de base de datos de su Gemfile (mysql2, sqlite3, etc.)
2. Cambie su
config/application.rbElimine la
require 'rails/alllínea y requiera marcos (entre los disponibles en surailsversión, la lista varía, no solo copie) que desea usar, por ejemplo:Quitar
config.active_record.raise_in_transactional_callbacks = truedeconfig/application.rb3. Elimine su
config/database.ymlarchivodb/schema.rby las migraciones (si las hubiera)4. Eliminar registro de migración
test/test_helper.rb5. Elimine cualquier configuración de ActiveRecord de sus
config/environmentsarchivos (esto es lo que está causando su error)Esto es todo lo que necesita hacer para una aplicación Rails vacía. Si se encuentra con problemas causados por su código existente, el seguimiento de la pila debería brindarle suficiente información sobre lo que necesita cambiar. Por ejemplo, podría tener alguna configuración de ActiveRecord en sus inicializadores.
fuente
require 'rails/all'incluye se puede encontrar aquí .rails new my_app -Oun mes. Ahora quiero recuperar el registro activo. ¿Qué archivos / gemas / configuración necesito agregar ahora?config.active_record.raise_in_transactional_callbacks = truedeconfig/application.rb.Hola, esto es lo que dan los rieles predeterminados new_app -O
dentro de su config / application.rb
Además, viene sin database.yml y SIN db / migrate / * y schema.rb
fuente
require "action_cable/engine"Dado que este sigue siendo el primer resultado al buscar en Google para deshabilitar el registro activo para Rails 5, agregaré esto aquí:
Para rieles 5
Haga todos los pasos en la respuesta de @mechanicalfish, pero también elimine la línea
de
fuente
Para aquellos que usan la gema rails-api , pueden encontrar un error similar al usar la
--skip-active-recordbandera al hacerrails-api new my_api. La solución actual (hasta que se publique una nueva versión corregida de la gema) es editar su gema rails-api para tener esta confirmación . Usebundle openy reemplace el viejoGemfilepor el nuevo corregido. Vuelva a ejecutar y debería estar todo listo.fuente
Para deshabilitar ActiveRecord en Rails 4.2, puede crear config / initializers / middleware.rb
Ver el middleware de rake de terminal
fuente
Para rieles 5:
Si está generando una nueva aplicación
Use la
--skip-active-recordopción para generar una aplicación sin una base de datos:rails new myApp --skip-active-recordfuente
Para complementos de Rails (o gemas) con una
spec/dummyaplicaciónCuando su aplicación rails se encuentra instalada
spec/dummye inicia su servidor desde el directorio raíz del complemento. Es posible que aún obtenga el siguiente error:Para evitar esto, elimine
require rails/alldentro del archivobin/railsy requiera los marcos que desee usar, por ejemplo:fuente
Para Ruby On Rails versión 5.1.x
fuente