function arrayvaluecount($array) {
$counter = 0;
foreach($array as $val){
list($v)=$val;
if($v){
$counter =$counter+1;
}
}
return $counter;
}
Что-то вроде
<% for attribute in @user.attributes.keys %>
<p><%= attribute.humanize %> <%= @user.attributes[attribute].to_s %></p>
<% end %>
может помочь.
Мэтт
Я полагаю, вы хотите отобразить все атрибуты строки из таблицы базы данных, которая определена как модель ActiveRecord. Вы можете использовать метод класса column_names (он есть в каждой модели ActiveRecord), который возвращает имена столбцов таблицы в массиве.
<%= User.column_names.collect { |col_name| "#{col_name.capitalize}: <p>#{@user[col_name]}</p>" }.join("\n") %>