Rails 3 - как мне вообще избежать базы данных? - PullRequest
45 голосов
/ 17 октября 2010

Я пытаюсь использовать rails 3 без какой-либо базы данных, но он по-прежнему настаивает на том, чтобы при попытке получить доступ к странице требовался гем 'sqlite3', и выдает ошибку no such file to load -- sqlite3, хотя никакой код в приложении не требуетsqlite, за исключением того, что я оставил database.yml с настройками по умолчанию для sqlite3, поскольку удаление содержимого вызывало другие ошибки.Любая идея, как я мог бы использовать рельсы без какой-либо базы данных и избежать указанных ошибок?спасибо.

(также я знаком с Синатрой - просто предпочитаю рельсы для этого проекта).

Ответы [ 2 ]

99 голосов
/ 17 октября 2010

Рельсы 3:

В application.rb удалите строку require 'rails/all' и вместо этого добавьте следующие строки:

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

Также см. Удаление ActiveRecord в Rails 3 и посмотрите на Active Model railscast

Rails 3.2.x:

Вам также необходимо удалить / закомментировать эту строку в application.rb

config.active_record.whitelist_attributes = true

И удалите / прокомментируйте эти две строки из development.rb

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

Rails 2.x:

В config/environment.rb добавить (или раскомментировать) строку

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

Это заставит Rails не использовать эти фреймворки. (Обратите внимание на почти невидимую -=!)

10 голосов
/ 31 января 2012

Кроме того, в Rails 3 удалите все ссылки на active_record в

config / environment / development.rb

config / Environment / test.rb и

config /environment / production.rb, например

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

, а также удаление require "rails / all" и добавление строк require в комментарии 21 (выше).

, если вы не используетебаза данных (работает с Rails 3.1.1)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...