CGI + Sinatra + jpmobile
テンプレート処理など面倒はSinatraにまかせつつ、jpmobileの各種フィルタ・ビュー振り分け、絵文字変換などを利用したい。(昔 rack-ketai というgemを書いたが、jpmobileがrack対応した時点で役割を終えました。)
Gemfile
source 'https://rubygems.org'
gem "sinatra", "~> 1.4.3"
gem "jpmobile", "~> 4.0.0"
app.cgi
#!/usr/local/rbenv/versions/2.0.0-p247/bin/ruby
require 'rubygems'
require 'bundler'
Bundler.require
require 'jpmobile/sinatra'
require 'jpmobile/rack'
class MyApp < Jpmobile::Sinatra::Base
use Jpmobile::Rack::MobileCarrier
use Jpmobile::Rack::ParamsFilter
use Jpmobile::Rack::Filter
get '/' do
erb :index
end
end
set :run, false
set :environment, :cgi
Rack::Handler::CGI.run MyApp
なお、Bundlerによるgemインストールはvendor/bundleへがよいと思う。
bundle install --path vendor/bundle