在 Rails 开始使用 Nokogiri?不需要gem'nokogiri'?
Getting started with Nokogiri in Rails? No need for gem 'nokogiri'?
我正在研究 Nokogiri 并考虑在我的应用程序中使用它,但显然当我这样做时 bundle install
(没有 gem 'nokogiri'
)它已经“使用 nokogiri 1.6.7.1".
当我在我的 Gemfile 中添加 gem 'nokogiri'
时,没有 "installing..." 那么,nokogiri 是否已经预先安装在 Rails 中?如果是这样,我还需要这些吗:
require 'nokogiri'
require 'open-uri'
我应该把它放在哪里?在我的控制器内?或 application.rb
?
这是我的application.rb
样子
require File.expand_path('../boot', __FILE__)
require 'rails/all'
Bundler.require(*Rails.groups)
if Rails.env.test? || Rails.env.development?
CONFIG = YAML.load(File.read(File.expand_path('../aws.yml', __FILE__)))
CONFIG.merge! CONFIG.fetch(Rails.env, {})
CONFIG.symbolize_keys!
end
module App
class Application < Rails::Application
config.middleware.use Rack::Pjax
config.active_record.raise_in_transactional_callbacks = true
config.active_job.queue_adapter = :sidekiq
end
end
另一个 gem (rails-dom-testing
) 需要 Nokogiri。所以它已经安装了。
而且您不需要编写 require 'nokogiri'
语句。因为Rails使用Bundler来管理依赖和加载gem。 Nokogiri 将已经加载。
我正在研究 Nokogiri 并考虑在我的应用程序中使用它,但显然当我这样做时 bundle install
(没有 gem 'nokogiri'
)它已经“使用 nokogiri 1.6.7.1".
当我在我的 Gemfile 中添加 gem 'nokogiri'
时,没有 "installing..." 那么,nokogiri 是否已经预先安装在 Rails 中?如果是这样,我还需要这些吗:
require 'nokogiri'
require 'open-uri'
我应该把它放在哪里?在我的控制器内?或 application.rb
?
这是我的application.rb
样子
require File.expand_path('../boot', __FILE__)
require 'rails/all'
Bundler.require(*Rails.groups)
if Rails.env.test? || Rails.env.development?
CONFIG = YAML.load(File.read(File.expand_path('../aws.yml', __FILE__)))
CONFIG.merge! CONFIG.fetch(Rails.env, {})
CONFIG.symbolize_keys!
end
module App
class Application < Rails::Application
config.middleware.use Rack::Pjax
config.active_record.raise_in_transactional_callbacks = true
config.active_job.queue_adapter = :sidekiq
end
end
另一个 gem (rails-dom-testing
) 需要 Nokogiri。所以它已经安装了。
而且您不需要编写 require 'nokogiri'
语句。因为Rails使用Bundler来管理依赖和加载gem。 Nokogiri 将已经加载。