2017-08-25 87 views
0

因此,我啓動舊的Rails服務器已經有一段時間了。甚至讓軟件包安裝也花了很多技巧......但最終我從Rails 4.2.6升級到了4.2.9。該軟件包安裝得很好。我在Ruby 2.3.0上。但現在的問題是...每當我嘗試運行:Rails 4.2.9「無法加載這樣的文件」(多個文件)

rails s 

我得到以下錯誤:

rails-html-sanitizer.rb:2:in `require': cannot load such file -- loofah (LoadError) 
    from /home/rainless/.rvm/gems/[email protected]/gems/rails-html-sanitizer-1.0.3/lib/rails-html-sanitizer.rb:2:in `<top (required)>' 
    from /home/rainless/.rvm/gems/[email protected]/gems/bundler-1.7.9/lib/bundler/runtime.rb:76:in `require' 
    from /home/rainless/.rvm/gems/[email protected]/gems/bundler-1.7.9/lib/bundler/runtime.rb:76:in `block (2 levels) in require' 
    from /home/rainless/.rvm/gems/[email protected]/gems/bundler-1.7.9/lib/bundler/runtime.rb:72:in `each' 

或一些變化。

起初,我是通過卸載任何被稱爲無法加載的Gem(在本例中爲「絲瓜絡」,但我已經使用更多)來解決此問題,然後將其添加到Gemfile中,然後將其添加到Gemfile中使用Bundler進行安裝。我現在意識到列表是永無止境的:

gem 'rails-html-sanitizer' 
gem 'chronic' 
gem 'multipart-post' 
gem 'oauth-active-resource' 
gem 'rack-test' 
gem 'multi_json' 
gem 'addressable' 
gem 'orm_adapter' 

以上所有都無法加載。我在這之前跑了Rails好幾年了......我知道這不是它應該工作的方式。任何關於可能出錯的幫助/建議?

回答

0

如果你在錯誤信息仔細看,它說:ruby​​[email protected]但你提到的「從Rails的4.2.6升級到4.2.9。」。由於某種原因,它仍然指的是rails 3.2.16。因此,您可能需要在全球安裝rails-html-sanitizer。順便說一句,如果您想在非導軌應用程序中使用它,只需要絲瓜。請參閱文檔here

Rails Html Sanitizer is only intended to be used with Rails applications. If you need similar functionality in non Rails apps consider using Loofah directly (that's what handles sanitization under the hood).

from /home/rainless/.rvm/gems/[email protected]/gems/rails-html-sanitizer-1.0.3/lib/rails-html-sanitizer.rb:2:in `<top (required)>' 
+0

哈哈哈。那只是我懶惰而已。 :)這只是寶石的名字。就像我說的那樣...它在4.2.6中工作正常......所以gemset的名字在很長很長的時間裏一直是「rails3.2.16」,並且它一直工作。實際上,rails-html-sanitizer是全局安裝的。所以不知道發生了什麼。絲瓜絡只是Rails說它無法加載的最新文件。我已經添加了它,現在它告訴我formtastic_i18n無法加載。如果我安裝它會告訴我其他東西無法加載。仍然有點根本的問題是什麼。 –

相關問題