0
這是一個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
但我如何循環數據來構建每條記錄的數據行並確保它們排列在表頭的正確列中?也許有更好的方法來生成整個表格。 我也不知道每條記錄的屬性可能是什麼,所以給定結果集時,表格標題將每次動態構建
調整後的原始問題,我無法匹配'_',因爲記錄長度可變 – sysconfig
@sysconfig:我不理解您的評論。你在'@ header_values'中有所有可能的列,所以你可以迭代它,如果一個特定的列車具有那個屬性,那麼使用't [k]',如果它不使用''''。 –
謝謝,您的解決方案激發了我的最終解決方案。 – sysconfig