2012年7月5日木曜日

文字列の最大値を繰り上げ

数字なら分かるのですが、文字列の場合繰り上げするのは・・・
と思っていたらありました便利なモノが!それは「succ」

before_save do
  last_number#before_saveで登録してます
end

def last_number
    if new_record?#新規登録時?
      if number.blank?#numberカラムは空?
        last_column = User.find(:all).max#ユーザーテーブル全ての最大値だけを探します。
        if last_column
          self.number = last_column.number.succ#numberカラムの最大値を1つ繰り上げします。
(AAAAならAAAB,1なら2というように)
        else
          self.number = "1"#一番最初の登録で記入がないなら1を入れます。
        end
      end
    end
  end

0 件のコメント:

コメントを投稿