1. ホーム
  2. ruby-on-rails

[解決済み] Ruby on Railsです。BlueCloth gemをherokuにデプロイすると本番で動作しない

2022-02-26 03:39:14

質問

を使おうとしているのですが BlueCloth gemは私のrailsアプリのためにいくつかのマークダウンをパースするために使用されます。私はそれを私のgemファイルに追加しました。

    gem 'BlueCloth'

私の .html.erb ビューで、私は以下のコードを使用しています。

    <%=  BlueCloth.new(post.content).to_html.html_safe %>

マークダウンをhtmlとしてレンダリングするため。これはローカルの開発環境ではまったく問題なく動作しますが、herokuにプッシュする際には、たとえ bundle install を実行し、アプリを再起動すると、アプリにアクセスすると内部サーバエラーが発生します。

ログに以下のようなエラーが表示されるのですが。

    ActionView::Template::Error (uninitialized constant ActionView::CompiledTemplates::BlueCloth):

私は BlueCloth を gem ファイルに追加してください。

source 'https://rubygems.org'

gem 'rails', '3.2.8'

gem 'pg'

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'
  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

gem 'devise'
gem 'BlueCloth'

また、コマンドを実行しました。 bundle install をherokuのコマンドラインから実行してください。

ありがとうございました。

解決方法は?

問題は、私が古いバージョンの BlueCloth gem を使用します。

古いgemは BlueCloth という名前で、新しいものは bluecloth

私のgemファイルの行を変更する。

    gem 'BlueCloth'

へ。

    gem `bluecloth`

修正しました。

ありがとうございます。