代码之家  ›  专栏  ›  技术社区  ›  Mike Sutton

Ruby需要问题

  •  0
  • Mike Sutton  · 技术社区  · 15 年前

    我在试着让消毒宝石启动运行。我已经根据需要安装了Sanitize和Nokogiri 1.3.3,但当我尝试在应用程序中使用它时,请使用.rb:

    require 'rubygems'
    require 'sanitize'
    

    我得到错误:

    MissingSourceFile 
    no such file to load -- sanitize
    RAILS_ROOT: C:/Ruby/GWS
    
    (stack trace)
    
    This error occurred while loading the following files:
       sanitize
    

    如果我需要Nokogiri,我也会得到错误,但是如果我需要其他宝石,如rmagic,我不会。

    我试过卸载和重新安装Nokogiri和Santitize,但没有运气。

    更新: 如果我从IRB运行require命令,我会得到一个关于racc未被找到的错误。如果我尝试安装racc,我会在 error while installing ruby gem

    2 回复  |  直到 15 年前
        1
  •  1
  •   Mike Sutton    15 年前

    以下是我修复它的方法。

    将以下内容添加到config/environment.rb

    Rails::Initializer.run do |config|
      config.gem 'nokogiri', :version => '~> 1.3.3', :source => 'http://gems.github.com'
    end
    
    gem 'nokogiri', '~> 1.3.3'
    
    require 'nokogiri'
    
    Rails::Initializer.run do |config|
      config.gem 'sanitize', :version => '~> 1.1.0', :source => 'http://gems.github.com'
    end
    
    gem 'sanitize', '~> 1.1.0'
    
    require 'sanitize'
    

    然后运行

    rake gems:install
    

    (我还必须卸载和重新安装gems,但这可能是由于我的一个gem源的问题,在原始版本出现后我添加了这个源)。

        2
  •  0
  •   ehsanul    15 年前

    您是否尝试安装带有该问题答案的racc?还有一些关于进一步错误的评论。

    如果这不起作用,你可以试着用自动售货机消毒,看看是否可以。在命令行中:

    cd C:/myapp/vendor
    gem unpack sanitize
    

    然后在您的应用程序中:

    require 'vendor/sanitize/lib/sanitize'
    

    当然,根据不同的目录命名/结构调整上面的内容。