ruby-on-rails – Rails太阳黑子:多个模型搜索,但只有某个模型上的某些字段?

ruby-on-rails – Rails太阳黑子:多个模型搜索,但只有某个模型上的某些字段?,第1张

概述在我的Rails应用程序中,我使用太阳黑子来索引几个不同的模型.然后我有一个全局搜索表单,返回混合结果.这很好用: Sunspot.search(Person, EmailAddress, PhoneNumber, PhysicalAddress) do fulltext params[:q] paginate :per_page => 10end 我想在此搜索中添加一个额外的模型,比如 在我的Rails应用程序中,我使用太阳黑子来索引几个不同的模型.然后我有一个全局搜索表单,返回混合结果.这很好用:

Sunspot.search(Person,EmailAddress,PhoneNumber,PhysicalAddress) do  fulltext params[:q]  paginate :per_page => 10end

我想在此搜索中添加一个额外的模型,比如Project. Project模型有很多索引:

class Project < ActiveRecord::Base  searchable do    string :category do      category.name.downcase if category = self.category    end    string :clIEnt do      clIEnt.name.downcase if clIEnt = self.clIEnt    end    string :status    text :tracking_number    text :description    integer :category_ID,:references => category    integer :clIEnt_ID,:references => ClIEnt    integer :tag_IDs,:multiple => true,:references => Tag    time :created_at,:trIE => true    time :updated_at,:trIE => true    time :received_at,:trIE => true    time :completed_at,:trIE => true  endend

如何修改我原来的Sunspot.search调用,仅通过tracking_number字段添加搜索项目记录,而不是描述字段?

解决方法
Sunspot.search(Person,PhysicalAddress,Project) do  fulltext params[:q] do    fIElds(:tracking_number,:other_fIElds_outsIDe_your_project_model)  end  paginate :per_page => 10end

这将在tracking_number字段和您指定的任何其他字段上进行全文搜索,尤其是在Person,PhoneNumber和PhysicalAddress模型中.

总结

以上是内存溢出为你收集整理的ruby-on-rails – Rails太阳黑子:多个模型搜索,但只有某个模型上的某些字段?全部内容,希望文章能够帮你解决ruby-on-rails – Rails太阳黑子:多个模型搜索,但只有某个模型上的某些字段?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1279057.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存