1

最近のRailsのセキュリティ問題のために、使用しているいくつかのgemをアップグレードしました。

アプリをherokuにプッシュした後、エラーが表示されます(プッシュは正常に実行されますが、アプリのクラッシュが停止することはありません):

2013-02-12T00:12:49+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/redactor-rails-0.3.3/lib/redactor-rails.rb:30:in `document_model': uninitialized constant RedactorRails::Document (NameError)
2013-02-12T00:12:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/redactor-rails-0.3.3/app/controller/redactor_rails/documents_controller.rb:2:in `<class:DocumentsController>'
2013-02-12T00:12:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/redactor-rails-0.3.3/app/controller/redactor_rails/documents_controller.rb:1:in `<top (required)>'
2013-02-12T00:12:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/engine.rb:439:in `block (2 levels) in eager_load!'
2013-02-12T00:12:49+00:00 app[web.1]:   from /app/vendor/bundle/ruby/1.9.1/gems/railties-3.2.12/lib/rails/engine.rb:438:in `each'

アプリをローカルで実行しても、この問題は発生しません。ローカルでは、ruby 1.9.3-p194を使用していますが、HerokuはRuby1.9.1を使用しているようです。

これを修正する方法について何かアイデアはありますか?

ありがとう、リンゴ

4

2 に答える 2

1

ruby "1.9.3"Gemfileに追加して、Ruby 1.9.3(パッチ374、私は思う...)を使用できます。詳細については、こちらをご覧ください:https ://devcenter.heroku.com/articles/ruby-versions

更新:これは実際にはRedactor-Rails gemのバグのように見えます:https ://github.com/SammyLin/redactor-rails/issues/44

于 2013-02-12T03:43:14.880 に答える
1

0.3.3 redactor-railsを使用している場合は、次を実行します

rails generate redactor:install

これにより、追加の、

app / uploaders / redactor_rails_document_uploader.rb

app / models / redactor_rails / document.rb

そうしないと、

Gemfileでredactor-railsを以前のバージョンの0.3.2に制限します。

gem 'redactor-rails', '0.3.2'
于 2013-02-23T07:07:06.707 に答える