Step by Step Ruby on Rails

Ruby on Railsで実際にWebサイトを構築する手順をまとめています。

複数のカラムに一意(uniqueness)のバリデーションチェックを設定する方法

Railsで複数のカラムにuniquenessのバリデーションチェックを設定する方法についてです。
 
①一つのカラムに対しユニークかチェックする場合
 
例):nameカラムがユニークかチェックする例
validates :name, uniqueness: true
 
②二つのカラムに対してユニークかチェックする場合
 
例):latと:lngのカラムの組み合わせでユニークかチェックする場合
validates :lat, uniqueness: { scope: :lng }
 
③3つ以上のカラムに対してユニークかチェックする場合
 
例):nameと:latと:lngのカラムの組み合わせでユニークかチェックする場合
validates :name, uniqueness: { scope: [:lat,:lng] }