Как удалить SQLite3 из Rails, но продолжать использовать ActiveRecord/Mongo?

Я сделал проект Rails, который будет использовать Mongo, я уже установил MongoDb и его использую. Но проект требует использования SQLite3. Я не могу найти какие-либо рекомендации о том, как удалить его без удаления ActiveRecord или создания нового проекта.

Как я должен удалить SQLit3, не удаляя ActiveRecord, чтобы продолжать использовать Mongo?


обновить это было очень сложно. Приложение все еще падает и жалуется на зависимости ActiveRecord. Я обнаружил, что проще сделать чистую установку, если RoR без базы данных

Rails new MyApp -O

Затем установите Mongo, и все работает нормально.

gem 'mongoid'
rails g mongoid:config

Кроме того, чтобы создать приложение на основе Rspec, лучше сделать приложение без раздела Test и добавить Rspec. Таким образом, решение было перейти на чистую установку

rails new MyApp -O -T

затем установите rspec...

Моя проблема в том, что у меня уже есть приложение, и я не могу найти простой способ очистить его от SQLite3, поэтому я думаю, что лучше перенести код в новое чистое приложение??

1 ответ

Решение

Ваш Gemfile будет иметь линию

gem 'sqlite3'

Удалить его и запустить bundle install,

Кроме того, измените конфигурацию в вашем config/database.yml, он все еще может использовать SQLite3. Если есть строка ниже database.yml, это означает, что он пытается использовать SQLite3:

adapter: splite3

Измените его в соответствии с конфигурацией MongoDB.

Это удалит требование SQLite3 для вашего приложения rails. Однако вы должны знать, что это не приведет к удалению базы данных, которая уже была создана в SQLite3 приложением rails, вам придется удалить ее вручную.

Другие вопросы по тегам