Rails 4.2.9“无法加载这样的文件”(多个文件)

Rails 4.2.9“无法加载这样的文件”(多个文件)

问题描述:

因此,我启动旧的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好几年了......我知道这不是它应该工作的方式。任何关于可能出错的帮助/建议?

如果你在错误信息仔细看,它说: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无法加载。如果我安装它会告诉我其他东西无法加载。仍然有点根本的问题是什么。 –