Как удалить 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, вам придется удалить ее вручную.