2010-11-01から1ヶ月間の記事一覧

Deviseの認証後のリダイレクト

Railsの便利な認証プラグイン「Devise」は、ログイン後に、user_root、rootの順にリダイレクトを試みるけど、これらのnamed routesを、 # redirect when logged-in. namespace :user do root :to => user_show_path(current_user) end のように、ログイン後…

Hash#assert_valid_keys

Railsの画像添付のためのプラグイン「Paperclip」を使った場合に、モデルで以下のように宣言する。 class User < ActiveRecord::Base has_attached_file :avatar, :styles => { :medium => "300x300>", :thumb => "100x100>" } end 何も難しいところはないけ…

ActiveRecordのバリデーションはいつ起こるか

Railsに詳しい人と話していて、ActiveRecordのバリデーションはいつ実行されるかというのを完全に誤解していたというか、基本を理解していなかったことに気づいた。Active Record Validations and Callbacksの説明によれば、create、create!、save、save!、u…

RailsでURLのバリデーション

RailsのActiveRecordでは、バリデーションはデータベースへの書き出し、Model#saveのときに走るので、次のような場合に困る。open-uriを使ってフォームで渡されたURLを開き、このURLにアクセスした情報とフォームから入力された情報を使ってレコードを生成し…

Railsの個別設定情報はどこに書くのか

Amazon S3やBit.lyのAPIを使うのに、ユーザー名やAPIキーをアプリごとに管理する必要がある。こうした情報はどこに書くのが正しいのだろうか。Ryan BatesのawesomenessなRailscastの第85回に、やり方があった。YAMLファイルで用意しておいて、よしなに読み込…