2013年5月27日月曜日

Sinatraでプロジェクト作成 その1

アプリの作成で、async_sinatraを使いたいのでSinatraの使い方をまとめました。
async_sinatraを使える所までやっていきたいと思います。

環境

  • Mountain Lion
  • rvm
  • git
  • home brew

インストールからHello world表示までのサンプルです。

Sinatraのインストール

 
// フォルダ移動
cd /Users/{username}/Documents/wworkspace/sinatra/chat_sample/

// Sinatraのインストール
gem install sinatra

// Gemfile作成
bundle init

myapp.rbファイルを作成

 
 # myapp.rb
 require 'sinatra'

 get '/' do
   'Hello world!'
 end

起動確認

 
ruby myapp.rb

http://localhost:4567/に接続してHello world!の表示を確認

こんなあっさりと動くんですね。もしかしてHP作成くらいならrailsよりSinatraのほうが良いのでは・・・。

config.ruを用意してアプリを起動する

 
 touch config.ru

config.ruに記述

 
 #coding: utf-8
 require File.dirname( __FILE__ ) + '/myapp.rb'
 MyApp.run! :host => 'localhost', :port => 4567

myapp.rbにMyAppクラスを作ります。
myapp.rbを以下のように書き換えます。

 require 'sinatra/base'

 class MyApp < Sinatra::Base

   get '/' do
     puts "test"
     'Hello world!'
   end

 end

Gemfileファイルを変更

 
 # A sample Gemfile
 source "https://rubygems.org"

 gem 'sinatra'
 gem 'thin'

bundle updateとthinの起動

 
 // gemを更新
 bundle update

 // thinを起動
 thin start -R config.ru
 ruby config.ru


再びhttp://localhost:4567/に接続してHello world!の表示を確認しましょう。
表示されていると思います。

CTRL+Cでstopします。
thin start -R config.ruを使うとstopするときにエラーが発生します。原因はなんでしょうね?

次はEventMachineの勉強です。


参考サイト

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...