Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何利用太阳黑子实现多模型搜索_Ruby On Rails_Sunspot_Sunspot Solr - Fatal编程技术网

Ruby on rails 如何利用太阳黑子实现多模型搜索

Ruby on rails 如何利用太阳黑子实现多模型搜索,ruby-on-rails,sunspot,sunspot-solr,Ruby On Rails,Sunspot,Sunspot Solr,有两种模式用户和语言,有关联(有许多:语言)。现在我想搜索一个语言名称,搜索结果也应该告诉用户id。换句话说,该语言属于哪个用户 如何利用太阳黑子实现同样的功能 问候,, Karan我不明白你到底需要什么,我希望这篇文章能对你有所帮助 class User < ActiveRecord::Base has_many :languages # Searchable block for Sunspot-Solr searchable do

有两种模式用户和语言,有关联(有许多:语言)。现在我想搜索一个语言名称,搜索结果也应该告诉用户id。换句话说,该语言属于哪个用户

如何利用太阳黑子实现同样的功能

问候,,
Karan

我不明白你到底需要什么,我希望这篇文章能对你有所帮助

    class User < ActiveRecord::Base 

     has_many :languages

     # Searchable block for Sunspot-Solr

     searchable do

       # for facet search
       integer :language_id , :multiple => true , :references => Language do
         languages.collect(&:id).compact if languages.any?
       end

       # for text Search
       text :languages , :boost => 5 do
         languages.map {|language| language.name } if languages.any?
       end

     end

    end
class用户true,:references=>language do
languages.collect(&:id).compact if languages.any?
结束
#用于文本搜索
text:languages,:boost=>5 do
languages.map{| language | language.name}如果languages.any?
结束
结束
结束

您能不能通过返回语言上的关联来引用用户,或者我遗漏了什么?是的,我们可以通过您的方法实现,但如果我们只需要使用sunspot搜索一次性获取结果……难道不可能吗。。?太阳黑子提供了这种感觉吗。