ESC4.0をRESTで叩いてみる(その4)

新作リストをDBに格納し、それを画面に表示するまで。
動作確認レベルのコード。整理整頓はまた後で。


WidgetController.show の最後に

WidgetItem.delete_all "widget_id = #{@widget.id}"

total_list = total_list.sort{|a, b| b.releasedate <=> a.releasedate}
total_list[0,10].each { |item|
  puts item.releasedate + " : " + item.title.to_s.kconv(Kconv::SJIS, Kconv::UTF8)
  item.save
}
@widget = Widget.find(params[:id])

と記述。これで

    • 既存の商品リストをDBから削除
    • 検索した結果のうち最新10件をDBに登録
    • 新しい商品リストを含むWidgetをビューに提供するためにフェッチし直し。

を行っている。


そして、ビューであるshow.rhtmlに

<table>
  <tr>
  <% for column in WidgetItem.content_columns %>
    <th><%= column.human_name %></th>
  <% end %>
  </tr>
  
<% for widget_item in @widget.widgetItems %>
  <tr>
  <% for column in WidgetItem.content_columns %>
    <td><%=h widget_item.send(column.name) %></td>
  <% end %>
  </tr>
<% end %>
</table>

を追加。結果を一覧表示するHTMLコード。


実行。ぽちっとな。

できました。
っておお、小川一水の新作が出ておるじゃないか。