2011-11-01 7 views

Trả lời

6

Trước tiên, bạn nên sử dụng truy vấn match_all: MyModel.search({ query { all } }).results.total. (Trong Lucene, tránh các truy vấn ký tự đại diện bằng mọi giá.)

Hiện tại, Lốp không để lộ API "đếm". Điều đó sẽ thay đổi.

+0

Không có số lượng q uery có sẵn trong lốp? – Karussell

9

Trong ElasticSearch bạn có thể đếm tất cả các yếu tố sử dụng API đếm

curl -XGET http://localhost:9200/index/_count 

Xem Count API tài liệu trên trang web của họ.

0

Nếu bạn muốn nhận được số tài liệu bên trong chỉ mục, bạn có thể cũng chỉ cần kiểm tra index stats, như thế này:

curl -XGET localhost:9200/_stats 

Trong kết quả bạn sẽ nhận được số docs/xóa tài liệu (tài liệu chưa được hợp nhất).

0

Từ giao diện điều khiển:

Model.search("*:*").results.total 

có thể giúp ai đó;)

1

Bạn có thể làm điều này trong elasticsearch-model đá quý cũng như:

Article.search("cats", search_type: 'count').results.total 
# => 2026 

Và bạn sẽ không gây ra mang lại. ..

Article.search("cats", search_type: 'count').map {|r| r.title} 
# => []