未初始化的常量Mongoid :: Taggable :: Mongo

时间:2012-12-20 06:24:57

标签: ruby-on-rails mongoid

我将mongoid-taggable添加到我的Gemfile中,然后在我的模型中添加了include Mongoid::Taggable,但收到了错误消息:

uninitialized constant Mongoid::Taggable::Mongo

错误追踪:

app/models/recipe.rb:13:in `include'
app/models/recipe.rb:13:in `<class:Recipe>'
app/models/recipe.rb:2:in `<top (required)>'
app/controllers/recipes_controller.rb:11:in `index'

有没有人能解决这个问题?

1 个答案:

答案 0 :(得分:1)

如果没有深入挖掘Mongoid Taggable的来源,我的猜测是它是为2.x.x版本的Mongoid构建的。使用Mongoid的3.x.x版本,删除了对mongo gem的依赖。似乎没有人在超过一年的时间内致力于这个宝石,所以我怀疑它是否支持Mongoid版本3.x.x.

如果您使用此gem进行标记,则需要回滚到早期版本的Mongoid。 2.4.12是2.x.x分支中的最后一个稳定版本。

另一种解决方案是使用不同的宝石。我建议mongoid-tags-arent-hard。这是Mongoid 3的兼容性,效果相当不错。