まだファセットについて学んでいますが、関連付けられたレコードが割り当てられていないレコードをフィルタリングしたいと思います。まず、いくつかのコード:Rails + Sunspot:アソシエーションが割り当てられていないレコードをフィルタリングするための「未割り当て」ファセット
モデル:
class Project < ActiveRecord::Base
belongs_to :category
searchable do
text :name
integer :category_id, :references => Category
end
end
コントローラ:
class ProjectsController < ApplicationController
def index
@search = Project.search do
fulltext params[:q]
facet :category_id
with(:category_id, params[:category_id]) if params[:category_id].present?
end
@projects = @search.results
respond_with(@projects)
end
ビュー:
<ul>
<% for row in @search.facet(:category_id).rows %>
<li>
<% if params[:category_id].blank? %>
<%= link_to row.instance.name, :category_id => row.value %> (<%= row.count %>)
<% else %>
<strong><%= row.value %></strong> (<%= link_to "remove", :category_id => nil %>)
<% end %>
</li>
<% end %>
</ul>
ビューは、それぞれのカウントのカテゴリフィルタのリストを表示しかし、私は "割り当てられていない"ファセット(およびそのカウント)を含めるといいですは、カテゴリに割り当てられていないプロジェクトを照会します。これはファセットで可能ですか?また、カテゴリに割り当てられたプロジェクトをフィルタリングする「割り当て済み」ファセット(およびそのカウント)はどうですか?ありがとうございました。
バンプ。何か案は? – robertwbradford