1

Postgres で Rails 3.2.8 を使用しています。タイプとタグでフィルタリングできる Book モデルがあるとします。検索結果に表示する各フィルター (タイプ、タグなど) のファセット数を実装する方法に興味があります。UI は次のようになります。

Book Type
Banking(30)
IT(20)

Tags
business(20)
rspec(2)
rails(3)

Sphinx、Solr、またはその他の検索エンジンを使用せずに行う方法を見つけようとして、グーグル検索されました。postgresまたはactiverecordで実行できますか?

4

3 に答える 3

2
type_facet = Book.select('type, count(*)').where(:type => ["Banking","IT"]).group(:type)
tag_facet = Book.select('tag, count(*)').where(:tag => ["business","rspec","rails"]).group(:tag)

フロントエンドで上記のファセットを繰り返します。

于 2012-11-21T16:52:26.253 に答える
0

このようなものをお探しですか?

Book Type
Banking (<%= Book.where(:type => "Banking").count %>)
IT (<%= Book.where(:type => "IT").count %>)

Tags
business (<%= Book.where(:tag => "business").count %>)
rspec (<%= Book.where(:tag => "rspec").count %>)
rails (<%= Book.where(:tag => "rails").count %>)
于 2012-11-21T11:46:46.413 に答える
0
Book.count(:all, :group => 'type')
Book.count(:all, :group => 'tag')

カウントと各タイプ/タグが返されると思います。

于 2012-11-21T17:22:22.977 に答える