2010-12-12 18 views

Répondre

0
Product.all.any? { |product| product.description.present? } 
+0

Merci beaucoup! –

+0

Il est trop dangereux de voir la performance de la forme. Il va peupler tous les enregistrements Proudct en db, les mapper en objets et seulement que rejeter sans description, ce qui est à mon humble avis – Sigurd

+0

je suis d'accord. Aller avec la réponse c0r0ner fourni. – iain

3
Product.count(:conditions => "description IS NOT NULL") 

si la valeur nulle est autorisée. Il renverra le nombre total de produits avec la description disponible.

Si vous avez besoin du premier produit avec description en soi, utilisez d'abord au lieu de compter

+0

Ceci est beaucoup plus performant du point de vue de l'accès aux données. La réponse acceptée est correcte si et seulement si la totalité de la collection a déjà été chargée - dans ce cas, la pénalité de performance se situe ailleurs dans l'application. –

+0

Basé sur un nom de produit produit, j'ai appris que l'ensemble de la collection de produits ne devrait jamais être chargé à la fois. – Sigurd