Skip to main content
Backlinks: Field Selection, Relation See example: examples/demo_shop/app/controllers/groups_controller.rb.
  • State source: Relation#group_by(field, limit: nil, missing_values: false) stores normalized state in @state[:grouping]
  • Compiler: Relation#to_typesense_params emits Typesense params: group_by, group_limit, group_missing_values
rel = SearchEngine::Book.group_by(:author_id, limit: 1, missing_values: true)
# => { q: "*", query_by: "name, description", group_by: "author_id", group_limit: 1, group_missing_values: true }
CallParams
.group_by(:author_id)group_by: “author_id”
.group_by(:author_id, limit: 2)group_by: “author_id”, group_limit: 2
.group_by(:author_id, missing_values: true)group_by: “author_id”, group_missing_values: true
.group_by(:author_id, limit: 1, missing_values: true)group_by: “author_id”, group_limit: 1, group_missing_values: true
result = SearchEngine::Book.group_by(:author_id, limit: 2).to_a
res = SearchEngine::Book.group_by(:author_id, limit: 2).execute
Backlinks: README, Field Selection
{"event":"search","collection":"books","status":200,"duration.ms":12.3,"cache":true,"ttl":60,"group_by":"author_id","group_limit":1,"group_missing_values":true}