推送到Heroku Could not find activerecord-postgis-adapter-5.0.0 in any of the sources
时出错。
在开发和生产中使用PostGIS。
的Gemfile:
来源' https://rubygems.org'
git_source(:github) do |repo_name|
repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
"https://github.com/#{repo_name}.git"
end
ruby '2.4.0'
gem 'bundler'
gem 'rails', '~> 5.1.2'
gem 'pg'
gem 'puma', '3.4'
gem 'uglifier', '>= 3.2.0'
gem 'bootstrap', '~> 4.0.0.beta'
gem 'turbolinks', '~> 5'
gem 'jbuilder', '~> 2.5'
gem 'bcrypt', '~> 3.1.11'
gem 'carrierwave', '1.1.0'
gem 'leaflet-rails'
gem 'activerecord-postgis-adapter'
gem 'rgeo-geojson'
gem 'leaflet-draw-rails'
gem 'jquery-rails'
gem 'tether-rails'
gem 'jquery-ui-rails'
gem 'will_paginate', '3.1.5'
gem 'bootstrap-will_paginate', '1.0.0'
gem 'gon'
gem 'aws-sdk', '~> 2.3'
group :development do
gem 'web-console', '>= 3.5.1'
gem 'listen', '>= 3.0.8', '< 3.2'
gem 'database_cleaner'
gem 'rubocop', require: false
gem 'dotenv-rails'
gem 'awesome_print'
gem 'super_awesome_print'
gem 'heroku_db_restore'
end
group :development, :test do
gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]
gem 'pry-byebug'
gem "better_errors"
gem 'binding_of_caller'
gem 'capybara', '~> 2.13'
gem 'selenium-webdriver'
end
group :test do
gem 'minitest-reporters', '1.1.9'
gem 'guard', '2.14.1'
gem 'guard-minitest', '2.4.6'
gem 'rails-controller-testing', '1.0.2'
gem 'simplecov', :require => false
end
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
database.yml(已编辑):
default: &default
adapter: postgis
encoding: unicode
pool: 5
感谢您的任何建议。 activerecord-postgis-adapter
是否要求不需要的东西。 https://github.com/rgeo/activerecord-postgis-adapter。
stackoverflow问题。通常会被要求输入更多代码。现在无法发布,因为没有足够的细节。不确定我应该添加什么,所以我会一直打字直到错误消失。我过去已经能够将其推送到Heroku,但是postgis适配器还有其他问题,也许这是最近导致问题的更新。我不知道版本号的来源。 Gemfile的源代码部分对我来说有点神秘。
我尝试过的其他事情:
gem uninstall activerecord-postgis-adapter
Select gem to uninstall:
1. activerecord-postgis-adapter-3.1.2
2. activerecord-postgis-adapter-4.0.2
3. activerecord-postgis-adapter-5.0.0
4. activerecord-postgis-adapter-5.0.1
5. All versions
我选择了选项5并重新bundle install
。 Gemfile.lock
现在activerecord-postgis-adapter (4.0.4)
但是在Heroku推送仍然获得Could not find activerecord-postgis-adapter-5.0.0 in any of the sources
。
答案 0 :(得分:1)
检查你的Gemfile.lock
那个宝石,我猜你以前安装过它(可能在另一个系统上检查过它)并锁定到5.0.0?
RubyGems没有此Gem的5.0.0版本,因此作者似乎删除了它。 https://rubygems.org/gems/activerecord-postgis-adapter
然而,Bundler永远不会自动更新您的宝石(它跟踪Gemfile.lock
中的版本),但您可以使用bundle update
或bundle update activerecord-postgis-adapter
告诉它这样做。
答案 1 :(得分:0)
我做了两处修改,不确定哪个是关键。我通过删除版本约束来更改INSERT_UPDATE
,然后导致v gem 'pg', '~>0.18.4'
被安装。我还将0.21.0
移到了Gemfile中的gem 'rgeo-geojson'
之上。在gem 'activerecord-postgis-adapter'
之后activerecord-postgis-adapter 4.0.4
结束,这不是最新版本,所以仍然好奇这一切是如何运作的。我怀疑前者的改变是重要的。我将这些更改基于我正在处理的更新的相关应用程序上传到Heroku。