3

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'

誰でもこの問題の解決策を持っていますか?

4

1 に答える 1

1

Mongoid Taggable のソースを深く掘り下げることなく、これは Mongoid の 2.xx バージョン用に構築されたものであると推測します。Mongoid の 3.xx リリースで、mongogem への依存が削除されました。1 年以上この gem にコミットしている人はいないようです。そのため、Mongoid のバージョン 3.xx をサポートしているとは思えません。

この gem をタグ付けに使用する場合は、Mongoid の以前のリリースにロールバックする必要があります。2.4.12 は 2.xx ブランチの最後の安定版リリースです。

別の解決策は、別の gem を使用することです。mongoid-tags-arent-hardをお勧めします。これは Mongoid 3 と互換性があり、かなりうまく機能します。

于 2012-12-23T17:36:23.403 に答える