'?'記法 Syslog.find(:all, :conditions => ["priority > ? AND message = ?", 5, 'emergency!']) Hash記法 params = {:priority => 5, :message => 'emergency!'} Syslog.find(:all, :conditions => ["priority > :priority AND message = :message", params])
article = Article.find(:first) article.title #=> "Title" article.subject #=> "Edge Rails" # ひとつの属性をアップデート article.title = "New Title" # save時にDB にはこの属性のみアップデートを行います article.save #=> "UPDATE articles SET title = 'New Title' WHERE id = 1" 実はいままで知らなかったのですが、以前まではtitleだけでなく、変更していないsubjectまで含めたSQLを吐いていたんですね。これでSQLをスリムにできそうです。 またRails には、updated_at/on という特別なフィールド名がありますが、なにかしら属性が変更されていれば、このフィールドも自動的に更新される
最初の条件の文で、もし、nameに"%"が含まれていないなら @users = User.find(:all, :conditions => ["family_name LIKE ?%", name]) のように"?"のあとに"%"をつけます。 それから、複数の条件を指定するなら以下のようにします。(以下はLIKEを使っていません) @users = User.find(:all, :conditions => ["family_name = ? or family_name = ?", name1, name2]) "family_name = ?"を繰り返し記述するのが嫌なら、以下のような書き方もあります。 @users = User.find(:all, :conditions => ["family_name IN ( ? , ? )", name1, name2]) 動作テストは
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く