45 votes

Rails 3 - comment puis-je éviter de base de données tout à fait?

Je suis en train d'utiliser des rails de 3 sans db backend, mais il insiste encore sur le fait d'exiger 'sqlite3" gem lorsque j'essaie d'accéder à une page, et renvoie une erreur no such file to load -- sqlite3, même en l'absence de code dans l'application nécessite sqlite, sauf que j'ai quitté la base de données.yml avec son réglage par défaut pour sqlite3, car supprimer le contenu soulevé d'autres erreurs. Une idée de comment je pourrais utiliser des rails, sans base de données et d'éviter ces erreurs? merci.

(aussi, je suis familier avec Sinatra - juste préfèrent les rails pour ce projet).

99voto

Zabba Points 26372

Rails 3:

En application.rb, suppression de l' require 'rails/all' ligne et ajouter ces lignes:

require "action_controller/railtie"
require "action_mailer/railtie"
require "active_resource/railtie"
require "rails/test_unit/railtie"
require "sprockets/railtie"

Voir aussi Supprimer ActiveRecord dans Rails 3 et regardez dans le Modèle Actif railscast

Rails 3.2.x:

Vous aurez également besoin de supprimer/commentez cette ligne dans l'application.rb

config.active_record.whitelist_attributes = true

Et supprimer/commentaire de ces deux lignes de développement.rb

config.active_record.mass_assignment_sanitizer = :strict
config.active_record.auto_explain_threshold_in_seconds = 0.5

Rails 2.x:

En config/environment.rb ajouter (ou commentaires) de la ligne

config.frameworks -= [ :active_record, :active_resource, :action_mailer ]

Ce sera la cause de Rails de ne pas utiliser ces cadres. (Note de la quasi-invisible -= !)

10voto

Rod McLaughlin Points 101

Aussi, dans Rails 3, supprimer toutes les références à active_record dans

config/environments/développement.rb

config/environments/test.rb et

config/environments/production.rb tels que

config.active_record.mass_assignment_sanitizer = :strict
config.active_record.auto_explain_threshold_in_seconds = 0.5

ainsi que de supprimer le besoin de "rails/all" et d'ajouter au besoin des lignes en commentaire 21 (ci-dessus).

si vous n'êtes pas à l'aide d'une base de données (cela fonctionne avec des Rails 3.1.1)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X