SinatraとSequelとERBの練習

今まで勉強したSinatraとSequelとERBを使って、つぶやき一覧のようなものを作ってみた。

ERBファイル(test.erb)

<form method="post" action="">

<p>つぶやき:<input type="text" name="message"></p>
<p><input type="submit" value="送信する"></p>

</form>
<h3>つぶやき一覧</h3>
<% @messages.each do |message| %>
<%= message %>
</br>
<% end %>

RBファイル(test.rb)

require 'sinatra'
require 'erb'
require 'rubygems'
require 'sequel'

DB = Sequel.sqlite

#itemsテーブルを作成
DB.create_table :items do
  primary_key :id
  String :message
end

items = DB[:items]

get '/' do
  @messages = items.map(:message)
  erb :test
end

post '/' do
  items.insert(:message => params[:message])
  @messages = items.map(:message)
  erb :test
end

f:id:ayaketan:20111221233645j:image
つぶやきに入力して、「送信する」ボタンを押下するとつぶやき一覧に追加される。