Sería conveniente utilizar Ruby on Rails para un pequeño proyecto de sitio web que no necesita una base de datos actualmente. Sé que podría crear una base de datos vacía en MySQL e ir desde allí, pero ¿alguien conoce una mejor manera de ejecutar Rails sin una base de datos?
Gracias
ruby-on-rails
RobbieCanuck
fuente
fuente
Para Rails 3 y Rails 4 :
rails new myApp -O
o
rails new myApp --skip-activerecord
Esta respuesta se comparte desde aquí
Para rieles 5 :
Observe el guión adicional '-' a diferencia de las versiones anteriores de Rails .
rails new myApp --skip-active-record
fuente
-O
funciona. La opción--skip-activerecord
no funciona.--skip-active-record
(observe el guión entre el registro activo y el registro). La otra forma no funciona para mí.Para un proyecto existente de Rails 4/5/6, en su
config/application.rb
archivo tiene la siguiente línea:(Como referencia, esa línea está cargando este archivo )
Entonces, en lugar de cargar TODO, debe cargar cada biblioteca por separado de la siguiente manera:
Esté atento a los comentarios para saber qué cargar con respecto a su versión de Rails.
También revisa los siguientes archivos (en caso de que los tengas) y comenta las siguientes líneas:
También elimine cualquier referencia a
ActiveRecord::Base
en sus archivos de modelo (o simplemente elimine los archivos si corresponde). Por ejemplo, elapp/models/application_record.rb
archivo autogenerado .fuente
active_job/railtie
action_cable/engine
database.yml
por lo que simplemente ignorará la base de datos?rake assets:precompile
debido aNoMethodError: undefined method
active_record'`: /activerecord-nulldb-adapter
de github.com/nulldb/nulldb le permite cambiar el adaptador por un cambio temporal o menos invasivo.-O
yaction_mailer
no está relacionado conconfig/detabase.yml
, por lo que no es necesario comentarlo. También hay algunas líneas adicionales para comentar después deactive_storage
comentar.En Rails 4 al comenzar un nuevo proyecto, puede usar -O o --skip-active-record
Si ya ha creado un proyecto, deberá comentar
desde config / application.rb y
desde config / environment / development.rb
fuente
Si no necesita una base de datos, probablemente no necesite tener la mayor parte de Rails. Es posible que desee trabajar con un marco más pequeño y personalizable.
Sinatra es un marco pequeño que es ideal para ofrecer páginas estáticas básicas.
Pero si insiste en usar Rails, aquí hay un artículo que le mostrará cómo hacer eso o aquí .
fuente
Para soporte Rails 6 rc1 y
activerecord-nulldb-adapter
gem necesitamos un parche de monoEn config / initializers / null_db_adapter_monkey_patches.rb
fuente