Сегодня у меня была подобная проблема. Вот то, что работало на меня. Я попытался использовать подход Michael, но получил подобную ошибку.
Так вместо этого, я удалил драгоценный камень, что я думал, давал мне ошибку, gem uninstall sqlite3 -v 1.4.0
и вместо этого, используемый в моем файле драгоценного камня. gem 'sqlite3', '~> 1.3.6'
Работал bundle update
, и это работало как очарование на меня.
Я решил эту ошибку при конфигурировании версии sqlite3 в Gemfile как это:
gem 'sqlite3', '~> 1.3', '< 1.4'
казалось, что sqlite3-1.3.6 не хорошо работает, и sqlite3-1.4 еще не поддерживается, таким образом, она (строка, которую я предлагаю исправить для этой проблемы) загрузит последние 1,3 версии. В моем случае это - sqlite3-1.3.11.
я использую направляющие 5.0.0 и рубиновые 2.5.1 в моем проекте.
Проблема вызывается Активной Записью, которая имеет ограничение версии на sqlite3 драгоценный камень. Например, в случае направляющих 5.2.2 (последняя стабильная версия в то время, когда я пишу этот ответ) это ~> 1.3.6
. Однако это ограничение не указано в gemspec, но в исходный файл, который содержит класс адаптера. Как следствие Bundler не знает о нем и устанавливает sqlite3 версию 1.4.0 драгоценного камня, которая конфликтует.
хорошие новости - то, что фиксируют, был уже объединен в ведущее устройство и направляющие 5,2 ответвлений обслуживания (и возможно другие), и должен быть включен в 5.2.3.
На данный момент, можно сделать одно из следующего:
gem 'sqlite3', '~> 1.3.6'
5-2-stable
. Ни одно из решения не работало на меня, таким образом, я проследил ошибку и определил местоположение адаптеров соединения
Местоположение:
C:\Ruby\lib\ruby\gems\2.5.0\gems\activerecord-5.2.2\lib\active_record\connection_adapters\
Файл:
sqlite3_adapter.rb
изменился
gem "sqlite3", "~> 1.3.6"
к
gem "sqlite3", "~> 1.4.0"
, я обновил свою веб-страницу, и все работает!!!
Мой Env
Windows 10
Ruby : 2.5.3-p105
Rails: 5.2.2
Похож на sqlite3 версию в системе, отличается от установленного в приложении. В этом случае можно обновить версию драгоценного камня для приложения:
bundle update sqlite3
Или версия драгоценного камня изменения в Gemfile:
gem 'sqlite3', '~> 1.4'