2011-11-01 8 views

Odpowiedz

6

Najpierw należy użyć zapytania match_all: MyModel.search({ query { all } }).results.total. (W Lucene, za wszelką cenę unikaj zapytań za pomocą symboli wieloznacznych.)

Obecnie Tire nie udostępnia interfejsu API "count". To się zmieni.

+0

Czy nie ma liczby q dostępne w oponach? – Karussell

9

W ElasticSearch można policzyć wszystkie elementy używając API zliczania

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

Zobacz na Count API Docs na ich miejscu.

0

Jeśli chcesz uzyskać liczbę dokumentów w indeksie, można też po prostu sprawdzić index stats, tak:

curl -XGET localhost:9200/_stats 

W rezultacie otrzymasz liczbę docs/usunięte dokumenty (dokumenty jeszcze nie zostały scalone).

0

Od konsoli:

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

może komuś pomóc;)

1

Można to zrobić w elasticsearch-model gem, a także:

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

I nie spowoduje pobierania. ..

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