我正在跟进我几个月前发布的上一个问题。我现在有一个稍微不同的问题,我不确定旧问题是否会通过更新得到那么多可见性。所以,这是我的情况:
我正在开发一个使用 MongoDB 的 Ruby on Rails 应用程序,并且我已经实现了基本的 Sunspot 功能。这是有关我的环境的一些信息
- 导轨 3.2.11
- 蒙戈 2.4.3
- 太阳黑子 2.0.0
- 宝石 mongo_mapper
- 宝石 sunspot_rails
- 宝石太阳黑子_solr
- 宝石 sunspot_mongo_mapper
我需要运行以使 solr 工作的三个步骤是
bundle exec rake sunspot:solr:start
bundle exec rake db:seed
bundle exec rake sunspot:solr:reindex
前两个运行没有任何问题,但是当我尝试该reindex
命令时出现错误。这是堆栈跟踪
$ bundle exec rake sunspot:solr:reindex
rake aborted!
undefined method `includes' for Event:Class
/home/my_username/.rvm/gems/ruby-1.9.3-p429/gems/mongo_mapper-0.12.0/lib/mongo_mapper/plugins/dynamic_querying.rb:39:in `method_missing'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/gems/sunspot_rails-2.1.0/lib/sunspot/rails/searchable.rb:254:in `solr_index'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/gems/sunspot_rails-2.1.0/lib/sunspot/rails/searchable.rb:203:in `solr_reindex'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bundler/gems/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:21:in `block (3 levels) in <top (required)>'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bundler/gems/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:20:in `each'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bundler/gems/sunspot_mongo_mapper-b6cf3edca97a/lib/sunspot/mongo_mapper/tasks.rb:20:in `block (2 levels) in <top (required)>'
/home/my_username/.rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `eval'
/home/my_username.rvm/gems/ruby-1.9.3-p429/bin/ruby_noexec_wrapper:14:in `<main>'
Tasks: TOP => sunspot:solr:reindex => sunspot:reindex
(See full trace by running task with --trace)
自从我使用 solr/sunspot 以来已经有几个月了,所以我不太明白这个错误。我看到了这个问题,但是当我尝试这个答案时,我看到了这个消息
$ bundle exec rake sunspot:mongo:reindex
rake aborted!
Don't know how to build task 'sunspot:mongo:reindex'
在我的堆栈跟踪中,什么是“事件:类”?我在哪里可以找到“包含”方法?
解决此问题的任何帮助将不胜感激!