W mojej aplikacji, mam tablicę o nazwie @apps
który jest ładowany przez ActiveRecord z rekordu zawierającego aplikacji nazwisko, środowisko itdJak liczyć elementy w tablicy, które mają określoną wartość atrybutu?
Obecnie używam @apps.count
aby uzyskać liczbę aplikacji w tablicy, ale Mam problem z liczeniem liczby aplikacji w tablicy, gdzie environment = 0
.
Próbowałem @apps.count(0)
, ale to nie zadziałało, ponieważ istnieje wiele pól dla każdego rekordu.
Próbowałem także coś w rodzaju @apps.count{ |environment| environment = 0}
, ale nic się nie stało.
Wszelkie sugestie?
Wybieram pierwsze rozwiązanie, ponieważ potrzebuję wszystkich rekordów. – ny95
W zależności od liczby rekordów, może być szybciej, gdy poprosimy DBM o policzenie rekordów, a następnie iterowanie po jednym rekordzie, niż żądanie wszystkich rekordów, a następnie zliczanie i iterowanie po nich w Ruby. DBM jest zoptymalizowany do przekazywania 'count', a następnie iterowania rząd po rzędzie. Zrzucenie całego stołu na raz pobije twoje DB, hosta DB, sieć, host, na którym działa Twój kod, oraz twój serwer i aplikację Rails. –