1

我有一个 Rails 3.2, Ruby 1.9 应用程序,我正在尝试使用bandit gem进行设置。

我已经捆绑安装了 gem,运行bandit:install并修改了 和 的(bandit.yml用于开发)值。round_robinmemory

但是,所有启动开发服务器 ( ) 的尝试都会rails s导致以下错误:

/Users/michaelbuckbee/Sites/bshapp/config/routes.rb:148:in `block in ': 未初始化常量 Bandit::Engine (NameError)
    来自 /Users/michaelbuckbee/.rvm/gems/ruby-1.9.3-p0@bshapp/gems/actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:282:in `instance_exec'
    来自 /Users/michaelbuckbee/.rvm/gems/ruby-1.9.3-p0@bshapp/gems/actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:282:in `eval_block'
    来自 /Users/michaelbuckbee/.rvm/gems/ruby-1.9.3-p0@bshapp/gems/actionpack-3.2.12/lib/action_dispatch/routing/route_set.rb:260:in `draw'
    来自 /Users/michaelbuckbee/Sites/bshapp/config/routes.rb:1:in `'

如果我Bandit::Engine从 中删除该行routes.rb并进入 rails 控制台,我可以成功创建 Bandit Experiments。

4

1 回答 1

1

我只是按照强盗自述文件上的说明进行操作,得到了同样的错误。目前最新的标记版本是bandit-0.1.0; 如果您不指定任何选项,这就是 bundler 将安装的gem 'bandit'. 我怀疑你使用的是相同的版本。看那个版本的来源,Bandit::Engine不存在。它似乎确实包含在 bandit HEAD 中,此时提交 4c552c1efa。从 HEAD 捆绑为我解决了这个问题。

因此,在您的 Gemfile 中添加以下内容,捆绑安装,然后重试您的服务器:

gem 'bandit', :git => "git://github.com/bmuller/bandit.git"
于 2013-05-10T12:13:21.753 回答