Это приложение rails 3.1, и я немного новичок в отношении Ruby
и я уверен, что есть лучший способ сделать это.
У меня есть mongoDB с записью переменной длины, поэтому данные могут выглядеть так:
name | type | age | foo | bis | boz
------------------------------------------------
a data | - | data | - | data | -
b - | data | - | - | data | data
c - | - | - | data| - | _
где "-" не имеет значения.
данные выглядят так:
[_id: "a", name: "data", age: "data", bis: "data"]
[_id: "b", type: "data", bis: "data", boz: "data"]
[_id: "c", foo: "data"]
Я хочу отобразить эти данные в виде таблицы
Я могу получить массив всех (возможных) заголовков таблицы
с чем-то вроде этого:
@trains = Train.page(params[:page] || 1).per(50)
@a = []
@header_array = @trains.each {|train| @a.push(train.attributes.keys)}
@header_values = @a.uniq.to_a
но как я могу пройти через данные, чтобы построить строки данных каждой записи и убедиться, что они расположены в правильном столбце заголовка таблицы? Может быть, есть лучший способ создать всю таблицу.
Я также не знаю, какими могут быть атрибуты каждой записи, поэтому с учетом результирующего набора заголовки таблиц будут динамически создаваться каждый раз