【发布时间】:2014-12-09 13:50:02
【问题描述】:
当我尝试使用webdriver-user-agent gem 时,我无法访问该模块,更不用说它的方法了。
在 Rails.root/Gemfile.lock 中:
GEM
remote: https://rubygems.org/
specs:
# ...
watir-webdriver (0.6.10)
selenium-webdriver (>= 2.18.0)
webdriver-user-agent (7.1)
facets
json
selenium-webdriver
# ...
在 Rails.root/app/models/some_model.rb 中:
class SomeModel < ActiveRecord::Base
def some_function
driver = WebDriver::UserAgent.driver(browser: :firefox, agent: :iphone, orientation: :portrait)
# other functionality ...
end
end
加载环境
rails c
使用类:
2.0.0-p353 :001 > s = SomeModel.last
2.0.0-p353 :002 > s.some_function
NameError: uninitialized constant SomeModel::WebDriver
Rails 是否通过在 SomeModel 中查找模块而在错误的位置查找模块?我访问不正确吗?模块不可用:
2.0.0-p353 :003 > Webdriver::UserAgent
NameError: uninitialized constant WebDriver # corrected on edit
我尝试在类文件的顶部包含require 'webdriver-user-agent',然后是include WebDriver——同样的错误,但在加载模型实例时。
我提交了a bug report in the repo,但我确定我在这里做了一些愚蠢的事情......
附加信息:
- Centos 6.5
- Rails 4.1.4
- Ruby 2.0
- Rubygems 2.2.2
【问题讨论】:
标签: ruby-on-rails ruby rubygems watir-webdriver