2012-12-20 96 views
3

我加mongoid-taggable我Gemfile中,然後在我的模型加入include Mongoid::Taggable,卻收到一條錯誤消息:未初始化的常量Mongoid ::加標籤::蒙戈

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' 

不任何人都可以解決這個問題?

+0

您是否重新啓動服務器? :) –

+0

@MikhailNikalyukin是的,服務器重新啓動。我從頭開始創建標籤,但仍然想弄清楚什麼是錯的。 – Chada

+0

你使用的是什麼版本的Mongoid? – janders223

回答

1

沒有深入研究Mongoid Taggable的源代碼,我猜測它是爲Mongoid的2.x.x版本構建的。在Mongoid的3.x.x版本中,取消了對mongo寶石的依賴。似乎沒有人在一年內承諾過這個寶石,所以我懷疑它對Mongoid的3.x.x版本有任何支持。

如果您使用此gem進行標記設置,則需要回滾到較早版本的Mongoid。 2.4.12是2.x.x分支中的最後一個穩定版本。

另一種解決方案是使用不同的寶石。我會推薦mongoid-tags-arent-hard。這是Mongoid 3兼容,並且工作得很好。

+0

我已經使用[這個早午餐](https://github.com/Florian95/mongoid_taggable)作爲插件來解決它。並感謝您的推薦,它效果很好! :) – Chada

+0

和抱歉,我沒有足夠的聲譽投票你的答案。稍後會回來投票。 :) – Chada

相關問題