#一意性制約とは
同じデータを保存することができないようすること。
##マイグレーションファイルに一意性制約
def change
create_table :schools do |t|
t.string :name, null: false
t.timestamps
end
add_index :schools, :name, unique: true
end
add_index :schools, :name, unique: true
←この部分が一意性制約
テーブル名, カラム名
##モデルに一意性制約
validates :name, presence: true, uniqueness: { case_sensitive: false }
uniqueness: { case_sensitive: false }
←この部分が一意性制約
case_sensitive: false
は大文字・小文字を判別するかどうか。
##終わりに
マイグレーションとモデル両方に記述する必要がある。
RSpecを使って、一意性制約のテストをしているが、ずっとエラーが出ていて進まない…