replace_gem:在创建模型时加载'sqlite3'活动记录适配器时出错

问题描述 投票:10回答:4

我在创建的项目中创建模型时出错,错误如下,

/home/sushmitha/.rvm/gems/ruby-2.5.1/gems/bundler-2.0.1/lib/bundler/rubygems_integration.rb:408:在replace_gem中的块(2级):加载'sqlite3时出错'Active Record适配器。缺少它依赖的宝石?无法激活sqlite3(〜> 1.3.6),已经激活了sqlite3-1.4.0。确保将所有依赖项添加到Gemfile。 (LoadError)

ruby-on-rails ruby-on-rails-5
4个回答
14
投票

仅供参考,此处仅添加以下内容,

对于Rails 5+,通过在使用sqlite数据库时为Gemfile中的SQLite gem指定适当的版本来解决此问题:

 gem 'sqlite3', '~> 1.3', '>= 1.3.6'

Reference


18
投票

对于rails 5.2.2,请将您的Gemfile更新为sqlite:

gem 'sqlite3', '~> 1.3.6'

并在终端使用:

bundle update

1
投票

我把gem 'sqlite3', '~> 1.3.6'放在group :deevelopment, :test do里面,它对我有用。

e.g:

group :development, :test do
  gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
  gem 'sqlite3', '~> 1.3.6'
end

0
投票

现在,rails 5.2.2.1 has been released,正确和最简单的修复是将轨道阻止到该版本,因为它将sqlite3限制为1.3.6

# In Gemfile
gem 'rails', '~> 5.2.2.1'

然后在终端

bundle install

鉴于该版本中的安全修复程序,无论如何都应该这样做。

© www.soinside.com 2019 - 2024. All rights reserved.