-
涼宮ハルヒの消失を見てきました 2010-02-07 22:08:00
今日は免許の更新で鮫洲の試験場へ朝から行ってきました。すごく空いていて、あっという間に手続きは完了。今回、はじめてのゴールド免許なので講習も30分で終了しました。楽ちん。免許制度がちょっと変わったせいで、ぼくの持っていた普通免許は中型免許(8トン限定)に変わりました。おもしろい。バイクの免許は昔、中型限定から普通二輪に変わったので、ちょうど逆な感じですね。
朝、家を出る前にがっちりマンデーを見ました。食べログというサイトが紹介されていました。
鮫洲から京急で川崎へ。川崎チネチッタで涼宮ハルヒの消失(映画です)を見るためです。改札でユルさんと待ち合わせて映画館へ。映画はとてもおもしろかったです。帰ってから小説を読み返したのですが、かなり忠実に作られていました。
-
Rails3.0でmiddleware stackに独自クラスを積む方法 2010-02-12 18:46:00
Rails3.0では、独自のクラスをRackに積みたいときはconfig/application.rbで以下のように書けばいいようです。
module AppName class Application < Rails::Application .....(略) config.middleware.use "::NewRackClass" end endこれでStackの中にNewRackClassが積まれます。
[tsukasa@ubuntu] $ rake middleware [~/devel/lesson] (in /home/tsukasa/devel/app_name) use ActionDispatch::Static use Rack::Lock use Rack::Runtime use Rails::Rack::Logger use ActionDispatch::ShowExceptions use ActionDispatch::Callbacks use ActionDispatch::Cookies use ActionDispatch::Session::CookieStore use ActionDispatch::Flash use ActionDispatch::ParamsParser use Rack::MethodOverride use ActionDispatch::Head use NewRackClass use ActiveRecord::ConnectionAdapters::ConnectionManagement use ActiveRecord::QueryCache run AppName::Application.routes
途中に挿入したいときはinsertメソッドなどを使用すればOKです。
-
簡単なRackアプリケーションの作り方 2010-02-18 23:29:00
ちゃんとRackを勉強してなかったので、ちょっと遊んでみました。
基本的にはrackupファイルを作ってリクエストに対するレスポンスを返すクラスのインスタンスをrunメソッドで指定してあげればOKです。rackupファイルは拡張子.ruを使います。
config.ru
require 'rubygems' require 'rack' run Application.new
application.rbclass Application def call(env) request = Rack::Request.new(env) body = "ok" response = Rack::Response.new do |r| r.status = 200 r["Content-Type"] = "text/plain;charset=utf8" r.write body end response.finish end end
あとはrackupコマンドでこのrackupファイルを指定してあげると、webrickが起動します。ポート9292でアクセスできます。[tsukasa@ubuntu] $ rackup config.ru 192.168.0.1 - - [18/Feb/2010 23:27:15] "GET /test/ HTTP/1.1" 200 26 0.0000
Rackに新しい処理を行うクラスを追加してみます。
test_add.rbclass TestAdd def initialize(app) @app = app end def call(env) res = @app.call(env) res.last.write(" OK!") res end end
そしてrackup.ruファイルに新しく作ったクラスを積みます。
config.ruuse TestAdd run Application.new
簡単ですね。 -
のんびりした休日 2010-02-21 22:58:00

コメント(
リンク元(9)