1

Ruby on Rails アプリを Heroku にプッシュできませんでした。これは、Heroku が sqlite3 をインストールしようとし続け、Heroku が Postgresql しか使用しないためです。私はこれらの投稿の指示に従いました:

Sqlite3 で RoR アプリを Heroku にデプロイすると失敗する

heroku にプッシュできません - sqlite3.h がありません

sqlite3 gem を開発およびテスト グループでのみ使用するように設定し、他の gem がそれに依存していないことを確認し、事前に git commit を行うようにします。それでも同じ「sqlite3.hが見つかりません」というエラーが表示されます。私が気づいたことの 1 つは、"gem dependency" コマンドを実行すると、開発段階で sqlite3 に依存するいくつかの gem が見つかったことです。ただし、これらの宝石がインストールされている場所が見つかりません。彼らです:

Gem act-as-taggable-on-2.3.3

Gem client_side_validations-3.2.1

Gem cucumber-rails-1.3.0

Gem factory_girl-4.1.0

Gem Fixture_builder-0.3.4

ジェムカミナリ-0.14.1

Gem orm_adapter-0.4.0

そして、それぞれが依存関係として「sqlite3(> = 0、開発)」のようなものをリストしています。誰にもアイデアはありますか?

- 編集 -

ここに私の宝石ファイルがあります:

source 'https://rubygems.org'
gem 'rails', '3.2.11'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
#group :development, :test do
#   gem 'sqlite3'
#end
group :production do
  gem 'thin'
  gem 'pg'
end
# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platforms => :ruby
  gem 'uglifier', '>= 1.0.3'
end
gem 'jquery-rails'
#gem 'devise'
# #gem 'omniauth'
gem 'omniauth-facebook'
4

2 に答える 2

4

私はそれを考え出した。私はマスターとは別のブランチで作業していましたが、マスターをプッシュしていました。私が変更すると、それは機能しました。助けてくれてありがとう!

于 2013-01-23T20:38:03.697 に答える
3

これを試してください。開発とテストではsqlite3を使用しますが、本番環境ではpgを使用してください

group :development, :test do
    gem 'sqlite3'
end

group :production do
        gem 'thin'
    gem 'pg'
end
于 2013-01-23T07:14:24.143 に答える