おもしろwebサービス開発日記

Ruby や Rails を中心に、web技術について書いています

2011-01-01から1年間の記事一覧

Object#presence

rails が追加しているメソッド。真ならオブジェクト自身を返して、偽なら nil を返す。 object.present? ? object : nil. と同じ。下記のような、パラメータをチェックして使うよくある感じのコードが state = params[:state] if params[:state].present? co…

Rails3 で HTTPS を使うには

Configuring Rails 3 to use HTTPS and SSL – Simone Carletti's Blogの意訳。 Rails 3.1以降 Rails3.1以降からは、このコミットによってHTTPからHTTPSへ遷移させるのがちょう簡単にできるようになった。下記のようにするだけでOK。 # config/application.rb…

capybara でサブドメインを利用したアプリのテストをするには

capybara のドライバによって設定の仕方は違うようですが、デフォルトの Rack::Test であれば Capybara.default_host = "en.example.com" のようにすることで、サブドメインへアクセスすることができるようになります。 参考 capybara with subdomains ― Gist

Rails 3.1 の migration の変更点について

またまたRails 3.1 ネタです。Rails 3.1 では migration ファイルのデフォルトフォーマットが変わりました。 rails g model blog title:string body:text としたとき、Rails 3.0 では下記のファイルが生成されます class CreateBlogs < ActiveRecord::Migrat…

Rails3.1で追加されるパスワード暗号化機能について

Rails 3.1 からパスワードの暗号化用のモジュールができたようです。ActiveModel::SecurePassword で定義されていて、ActiveRecord や Mondoid などの ActiveModel を利用しているモデルで使えるそうな。User モデルに password_digest カラムが設定されてい…

deviseでログイン後で遷移するパスを変更するには

deviseでログイン後に遷移するパスは、デフォルトだと {deviseで指定したmodel名}_root_path root_path の順番で探す。それ以外を指定したい場合は、ApplicationController で after_sign_in_path_for メソッ ドをオーバライドする。 例 class ApplicationCo…

Rails 3.1 でサポートされるHTTPストリーミング機能について

Riding Rails: Why HTTP Streaming?の意訳です。Rails 3.1 からHTTPストリーミングがサポートされるようになるらしい。 HTTPストリーミングって何? 普通の動的なHTTPレスポンスにはContent-Lengthヘッダが必要。時系列的にはこんな感じ HTTPリクエスト 動的…

edge rails(Rails 3.1)の新機能を調べてみる

Rails 3.1 の機能がもう試せるらしいので、下記のエントリを参考にしつつ試してみました。How to Play with Rails 3.1, CoffeeScript and All That Jazz Right Now edge な rails アプリの作成 rvm でインストールしたての(gemのはいってない) Ruby 1.9.2 を…

退職しました

2011年4月15日付で株式会社ハートレイルズを退職しました。新卒で入社した富士通ではプログラミングはほぼしていなかったので、僕の「webエンジニア」というキャリアはハートレイルズから始まったことになります。入社当初はまさに「何が分からないかも分か…