rails tutorial 6章~

8/12~ 6章

validatesメソッド

想定外のデータを弾くための機能
検証ルールを書いておく

validate :カラム名,検証ルール

空データの登録を防ぐ presence
文字数の制限 length
データの重複を防ぐ uniqueness
特定の値が存在するか確認 inclusion

assertとassert_not

assert @userだと@userがtrueなら成功、falseなら失敗
assert_not @userだと@userがtrueなら失敗、falseなら成功
valid?メソッドはバリデーションを実行し有効な値か確認

つまりテストで無効化したい値を代入して、valid?を実行するとfalseが返るのでassert_not falseとなるので成功する

update_attribute

update_attributeを使うとパスワードなしでデータを更新できる
update_attributeの呼び出し方
.update_attribute(name: "name")では失敗
.update_attribute(:name, "name")では成功

update_attributeとupdate_attributesがある
update_attributesでは複数の属性をまとめて更新、保存できる
試してはいませんがバリデーションが適用されるらしい