У меня есть таблица Users, которую я хочу проанализировать, посчитав количество ячеек, в которых есть данные, например функцию COUNTA в Excel, которая подсчитывает ячейки, в которых есть данные:
JOB | ADDRESS | LOOKS | WEALTH
Matthew Tax Collector | | 3 | 9
Mark | Galilee | 6 |
social_count считает ячейки, в которых есть данные в адресе и задании. personal_count подсчитывает ячейки, которые имеют содержание во внешности, богатстве. Есть ли более простой способ сделать это в Rails? (потому что столбцов намного больше).
В Excel это будет
COUNTA(B2:C2) # outputs 1
COUNTA(D2:E2) # outputs 2
Мой код Rails:
socio_count = 0
if @user.job.present?
socio_count = socio_count + 1
end
if @user.address.present?
socio_count = socio_count + 1
end
# more columns here..
@socio_count = socio_count # outputs 1
personality_count = 0
if @user.looks.present?
personality_count = personality_count + 1
end
if @user.wealth.present?
personality_count = personality_count + 1
end
# more columns here..
@personality_count = personality_count # outputs 2