2017-02-01 5 views
0

Lorsque vous avez un regard à mon avis de Couchbase en utilisant le api web je suis arrivé à ce résultat:Get TOTAL_ROWS de la bibliothèque de rubis Couchbase

{ 
    "total_rows": 18279385, 
    "rows": [] 
} 

Mais j'utilise la pierre précieuse de Couchbase rubis comme suit

require 'couchbase' 
c = Couchbase.connect(...) 
sources = c.design_docs['Data'] 
pp sources.All 
#<Couchbase::View:47373151271840 @endpoint="_design/Data/_view/All" @params={:connection_timeout=>75000}> 

Mais comment puis-je obtenir les total_rows de la vue? J'ai trouvé peu de documentation qui se rapporte à une méthode "total_rows" mais cela ne semble pas être présent à ce stade.

+1

en lisant les documents, il semble que vous ayez besoin d'utiliser 'fetch' sans bloc pour avoir accès à' total_rows'. pouvez-vous essayer 'sources.All.fetch' et dites-moi ce que cela renvoie? – Anthony

+1

oui, @Anthony a raison, la vue doit être exécutée pour obtenir total_rows – avsej

+0

@Anthony qui résout le problème. – PascalTurbo

Répondre

0

Le commentaire de Anthony permet de résoudre le problème:

sources.All(limit: 0).fetch.total_rows 

Limite d'utilisation: 0 pour accélérer la demande.