2017-11-01 3 views
0

xlsxファイルの情報をダッシュ​​ボードのテーブルにフィードするために必要なスマッシングダッシュボードを作成しています。このシステムはRaspberry Piで動作しています。フォーマットスマートテーブルウィジェットに入力する配列

私はスクロールシートからroo gemを使用して読み込むことができますが、これは問題なく動作します。しかし、テーブルウィジェットは形式でしかデータを受け付けません

[ 
    {:cols=>[ 
     {:class=>"left", :value=>"Office", :style=>"color: #FFFFFF"}, 
     {:class=>"left", :value=>"Aberdeen"}, 
     {:class=>"left", :value=>"Australia"}, 
     {:class=>"left", :value=>"Eurocentral"}, 

     ] 
    }, 
    {:cols=>[{:class=>"left", :value=>"Number", :style=>"color: #FFFFFF"}, 
     {:value=>"1234"}, 
     {:value=>"5454"}, 
     {:value=>"9999"} 
     ] 
    } 
] 

この形式で配列を作成する方法については不明です。私は列内のセルをループし、これらを配列に入れて、これらの列配列を行配列にプッシュしようとしました。以下は私が書いたコードですが、遠く離れています。

i = 0 
    maxRows = is.last_row 
    maxCols = is.last_column 

    rows = [] 

    #Loop from the first row to the last 
    loop do 


     #Break out of the loop if we're done 
     if (i > maxRows) 
      break 
     end 


     #Put the row into the array as a new row 

     j = 0 
     cols = [] 
     loop do 
      cols[j] = "{:value=> #{is.cell(i,j)}}" 
      j +=1 

      if (j > maxRows) 
       break 
      end 



     end 

     #rows.push(cols) 



    end 

私はこの問題について助けていただきありがとうございます。私が読む必要があるリソース、私はこのことをはっきりと認識していないか、そうでないものです。

+0

今朝私はこの問題についてよく読んでいますが、私はこれを間違った方法で行ってきたと考えています。配列ではなくハッシュを作成する必要があります。 –

答えて

0

これを実行するのはかなり苦痛でしたが、最終的にそこに着いたのです。

誰もがGoogleを介してこの間に来るincase。

それぞれのインデックスに新しいハッシュを含む配列です。各ハッシュには、各インデックスがテーブル内の列である配列を含むcolsキーがあります。これらはさらに、テーブルのレンダリングに使用されるさまざまなキーを含むハッシュに含まれます。