升级到Rails 3.2.12和json 1.7.7后,Heroku上的Redactor-rails gem问题

时间:2013-02-12 00:31:49

标签: ruby-on-rails heroku redactor

由于最近的Rails安全问题,我已经升级了一些我使用的宝石。

我将应用程序推送到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在Ruby 1.9.1上。

关于如何解决这个问题的任何想法?

谢谢, 林檎

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:1)

如果您使用0.3.3 redactor-rails

,请运行以下命令
rails generate redactor:install

这应该生成额外的

  

app / uploaders / redactor_rails_document_uploader.rb

     

应用程序/模型/ redactor_rails / document.rb

否则,

将redactor-rails限制为Gemfile中早期版本的0.3.2

gem 'redactor-rails', '0.3.2'