Ahora que Rails 3 beta está disponible, pensé en reescribir una aplicación en la que acabo de empezar a trabajar en Rails 3 beta, tanto para familiarizarme con ella como para tener un poco de ventaja. La aplicación usa MongoDB y MongoMapper para todos sus modelos y, por lo tanto, no necesita ActiveRecord. En la versión anterior, estoy descargando activerecord de la siguiente manera:
config.frameworks -= [ :active_record ] # inside environment.rb
En la última versión, esto no funciona, solo arroja un error:
/Library/Ruby/Gems/1.8/gems/railties-3.0.0.beta/lib/rails/configuration.rb:126:in
`frameworks': config.frameworks in no longer supported. See the generated
config/boot.rb for steps on how to limit the frameworks that will be loaded
(RuntimeError)
from *snip*
Por supuesto, he mirado el boot.rb como sugirió, pero por lo que puedo ver, no hay ninguna pista aquí sobre cómo podría hacer para descargar AR. La razón por la que necesito hacer esto es porque no solo es una tontería cargar algo que no quiero, sino que también se queja de su incapacidad para hacer una conexión DB incluso cuando intento ejecutar un generador para un controlador. Esto se debe a que lo borré database.yml
y lo reemplacé con detalles de conexión para MongoDB para poder usar esta esencia para usar database.yml para los detalles de conexión de MongoDB. No estoy seguro de por qué necesita poder iniciar una conexión de base de datos solo para generar un controlador de todos modos ...
¿Alguien conoce la forma correcta de Rails 3 para hacer esto?
fuente
require "sprockets/railtie"
en tuapplication.rb
archivo.--skip-active-record
. Observe el guión adicional.Carriles 4
Estaba buscando cómo deshabilitarlo en los carriles 4 y solo encontré esta respuesta que ya no funciona en los carriles 4. Así es como puedes hacerlo en los carriles 4 (probado en RC1).
En un nuevo proyecto
En un proyecto existente
gem 'sqlite3'
ogem 'pg'
.En config / application.rb, reemplace
require 'rails/all'
conEn config / environment / development.rb, elimine o comente
config.active_record.migration_error = :page_load
Potencialmente, debe eliminar los ayudantes active_record de spec_helper (a través de VenoM en los comentarios)
Potencialmente, debe eliminar el middleware ConnectionManagement (parece ser el caso de unicornio):
config.app_middleware.delete "ActiveRecord::ConnectionAdapters::ConnectionManagement"
(a través de https://stackoverflow.com/a/18087332/764342 )Espero que esto ayude a otros a buscar cómo deshabilitar ActiveRecord en Rails 4.
fuente
Para una nueva aplicación de rieles, puede hacer que excluya el registro activo especificando el parámetro --skip-active-record. P.ej:
fuente
Si generó un nuevo proyecto usando Rails 3.2, también deberá comentar:
y
en su archivo development.rb .
fuente
Todo lo mencionado es cierto. La única cosa que tuve que hacer en rails 3.1 es comentar
en
config/application.rb
.fuente
Si está ejecutando rspec, también debe eliminar (en spec_helper):
y quitar
fuente
También comentar a cabo
(anotado en los rieles 3.2.13)
fuente