FLASHer のためのSinatra入門 [導入編]

前回の続きです。

今回は大量のダミーデータを返すAPIを作ってみます。
要件としては

  • 住所録を返すAPI
  • 本番サーバはPHPなので、URLもそれに合わせる
  • 100件程度、ランダムで返す
  • XMLの内容は、名前、メール、メッセージ、性別、国

という感じです。

Read More…

Posted in flash, ruby, sinatra, 未分類 at 2月 17th, 2010. No Comments.

Sinatra 楽しい!

今のところあまり大きなものを作る予定がないんだけど、ひとつのファイルにたくさんのルートを書いているとごちゃごちゃしてちょっと嫌だ。

かといってコントローラーを複数に別けるのもSinatraスタイルに反しているような気がする。そこでルートの階層をわかりやすくするTIPS。

def namespace routename, &block
  yield
end

namespaceというメソッドをトップレベルに定義しておく。このメソッドはブロックの内容を実行するだけ。

get '/users' do
  'Users Index'
end
get '/users/new' do
  'New User'
end
get '/todos' do
  'Todos Index'
end
get '/todos/:id' do
  "Show Todo #{params[:id]}"
end

これが

namespace '/users' do
  get '/users' do
    'Users Index'
  end
  get '/users/new' do
    'New User'
  end
end
namespace '/todos' do
  get '/todos' do
    'Todos Index'
  end
  get '/todos/:id' do
    "Show Todo #{params[:id]}"
  end
end

こう書けるようになる。

少し見やすい

Posted in ruby, sinatra at 2月 16th, 2010. No Comments.

はじめに

こんにちはーFlasherのみなさん。
すっかりRuby記事ばっかりなのに、いまだにブログ訪問者の大半はFlasherらしいこのブログ。
久しぶりにFLASHerのための記事を書けそうです。

今日とりあげるのはSinatraというRubyで作られた超シンプルなフレームワークです。

require 'rubygems'
require 'sinatra'
get '/hi' do
  "Hello World!"
end

このたった5行で、http://localhost:4567/hi にアクセスすると「Hello World!」というテキストを返すAPIサーバがローカルPC上に完成するんだ。

Rubyがわからなくたって、どんなプログラムなのか一目瞭然だ。シンプルだと思わないかい?
今回はこのシンプルなSinatraを使って、あなたのFlash案件に使える、より本番に近いモックAPIサーバを作ろうというお話です。

Read More…

Posted in flash, ruby, sinatra, 未分類 at 2月 16th, 2010. 2 Comments.