Развертывание рельсов Heroku "at = код ошибки = H10 desc =" Приложение упало " - PullRequest
0 голосов
/ 29 июня 2018

Я пытаюсь развернуть приложение Rails на Heroku, однако я сталкиваюсь с двумя ошибками h10:

heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" ... dyno= connect= service= status=503 bytes= protocol=https

и

at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" ...  dyno= connect= service= status=503 bytes= protocol=https

Когда я читал в других постах, я бегал heroku console.

Я получил этот ответ:

/app/vendor/bundle/ruby/2.3.0/gems/activerecord-4.2.6/lib/active_record/dynamic_matchers.rb:26:in `method_missing': undefined local variable or method `acts_as_votable' for Comment (call 'Comment.connection' to establish a connection):Class (NameError)

Когда я делаю heroku run rake db:migrate, я получаю это:

rake aborted!
NameError: uninitialized constant ForestLiana`

Вот мой Gemfile:

source 'https://rubygems.org'

ruby '2.3.0'

gem 'rails', '4.2.6'

group :development do
  gem 'sqlite3'
end

group :production do
  gem 'pg'
end

gem 'rails_12factor'
gem 'sass-rails', '~> 5.0'
gem 'uglifier', '>= 1.3.0'
gem 'coffee-rails', '~> 4.1.0'

gem 'jquery-rails'    
gem 'turbolinks'    
gem 'jbuilder', '~> 2.0'    
gem 'sdoc', '~> 0.4.0', group: :doc
gem 'bcrypt', '~> 3.1.7'

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

group :development do
  gem 'web-console', '~> 2.0'
  gem 'spring'
  gem 'forest_liana'
  gem 'acts_as_votable', '~> 0.10.0'
end

Это связано с версией гема? Как я могу решить эту проблему?

1 Ответ

0 голосов
/ 29 июня 2018

При развертывании кода в Heroku он не устанавливает драгоценные камни, определенные в группе :development в вашем Gemfile, поскольку эти драгоценные камни обычно не нужны при фактическом запуске приложения в рабочей среде.

Однако в вашем случае вы добавили гем acts_as_votable в группу разработчиков. Поскольку ваши модели используют его, вы должны определить его вне какой-либо группы в вашем Gemfile, чтобы он всегда был установлен.

При проверке вашей трассировки стека вы видите, что метод acts_as_votable, который вы вызываете в своем классе Comment, недоступен в Heroku. Это может дать вам подсказку, что жемчужина, добавляющая этот метод, либо не установлена, либо не загружена каким-либо образом.

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