0

Ruby on Rails の全文検索で sunspot_rails gem を使用し、
ブール値フィールド ('show_facet') をモデル Product に追加し、solr index
に次のことを行います。

  • 'show_facet' == true の場合、検索リストとファセット リストに製品を表示します
  • if 'show_facet' == false then show Product only in search list

すべてのドキュメント、フォーラム、API を読みましたが、この質問に対する答えが見つかりません
。太陽黒点でこれを行うことはできますか?

型式コード
検索可能
    文字列:キーワード、複数:true    
    文字列:ステータス
    ブール値:表示
    ブール値:show_facet
    時間:updated_at
    テキスト:keyword_long、格納: true
    テキスト:jtitle、保存: true
    整数:id
    整数 :company_id
  終わり


コントローラ

  デフショー
    @product_search = OpenStruct.new(params[:product_search])
    @search = search_plain
  終わり

  プライベート

  def search_plain
    basic_search do |検索|
      search.fulltext(@product_search.fulltext) する
        フィールド *(%w[jtitle keyword_long])
        ハイライト :keyword_long
        ハイライト:jtitle
      終わり
    終わり
  終わり

  def basic_search
    Product.solr_search do |検索|
      利回り検索
      search.with(:show, true)
      search.order_by(:ランダム)
      search.paginate ページ: params[:page]、per_page: 10
      search.with(:keywords).all_of(@product_search.keywords)
      search.facet :キーワード
    終わり
  終わり

show_facet = true の製品のファセットのみを facet(:keywords) に含める必要がありますが、検索ですべての製品を表示します (show_facet true または false を使用)。

4

0 に答える 0