Как исправить эту ошибку Heroku с помощью pg gemfile и Rails 3.1? - PullRequest
4 голосов
/ 26 июля 2011

Я пытаюсь загрузить приложение Rails 3.1 (с CoffeeScript) в Heroku. Видимо, есть известные проблемы с этим (http://stackoverflow.com/questions/6075961/problem-deploying-rails-3-1-project-to-heroku-could-not-find-a-javascript-runtim),, поэтому я добавил это в свой Gemfile:

group :production do
  gem 'therubyracer-heroku', '0.8.1.pre3'
end

Затем, после еще нескольких недоразумений, я обнаружил, что должен сделать следующее:

group :production do
  gem 'therubyracer-heroku', '0.8.1.pre3'
  gem 'pg'
  # pg from /4544203/oshibka-heroku-pri-zapuske-prilozheniya-rails3-1-otsutstvuet-dragotsennyi-kamen-postgres
end

Теперь я попал в эту ошибку: «Вы изменили свой Gemfile в процессе разработки, но не проверили полученный снимок (Gemfile.lock) в систему контроля версий» * *

git push heroku master
Counting objects: 5, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 402 bytes, done.
Total 3 (delta 2), reused 0 (delta 0)

-----> Heroku receiving push
-----> Rails app detected
-----> Detected Rails is not set to serve static_assets
       Installing rails3_serve_static_assets... done
-----> Configure Rails 3 to disable x-sendfile
       Installing rails3_disable_x_sendfile... done
-----> Configure Rails to log to stdout
       Installing rails_log_stdout... done
-----> Gemfile detected, running Bundler version 1.0.7
       Unresolved dependencies detected; Installing...
       Using --without development:test
       You have modified your Gemfile in development but did not check
       the resulting snapshot (Gemfile.lock) into version control

       You have added to the Gemfile:
       * pg
       FAILED: http://devcenter.heroku.com/articles/bundler
 !     Heroku push rejected, failed to install gems via Bundler

Ну, нет обновленного Gemfile.lock для фиксации ... даже после запуска обновления пакета. В чем дело? Как, черт возьми, я разверну в Heroku? Я думал, что с Ruby on Rails и Heroku легко начать!

1 Ответ

2 голосов
/ 26 июля 2011

Интересное время, потому что я недавно смог развернуть приложение Rails 3.1 для Heroku. Прежде всего, убедитесь, что Gemfile.lock действительно включен в систему контроля версий. Затем рассмотрите возможность использования этого:

group :production do
  gem 'therubyracer', '~> 0.9.3.beta1'
end

Это отлично сработало, и я тоже использую гем 'pg'. Теперь, я никогда не получал ошибку, которую вы сделали - но я знаю, что гем 'therubyracer', который я указал выше, заботится об ошибке JS на стороне Heroku (или, возможно, Sprockets?

Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...