Komei22 / rails-tutorial

rails-tutorialのsample_app作っていきます
0 stars 0 forks source link

ch6.2.3演習 #31

Closed Komei22 closed 7 years ago

Komei22 commented 7 years ago

ch6.2.3

演習1

長すぎるnameとemail属性を持ったuserオブジェクトを生成し、有効でないことを確認してみましょう。

irb(main):001:0> u = User.new(name: "nonononaonoanoanodnfoiandfnaofnoaodfnaondsfnasodasnofasnosdonasndofandafosndofasnonaonsofaosdkfnalskofkaof", email: "jfdoasjdfkoakjsjfdokasjodkjaoskdfjasodkfjdnaoknonodjafklasdafjjfkldasjdflkajsklfdjlasjdlkajslkdjlkasjdklajskdljsakldjlkasjfdlkajsdlkjalskjfdklasjflsjfdlksjflksjflsjfldjalfjdlkajsflkajflkjasljlkjalkjlakjflkajfjldskjflskajflkdadslkfjalskjflajdlkfajlfkjdaljflkajfdjalfjkajdajlkdfjlasdjflkasjldfjalfjlkasflakjfkljaslkjdalkjfalkfjdlajflkajsfldkasjlkdsjlakjflkadsjlakjflsjflkdajsflksdjlfksdlfjalkfjlajalfjaljflakjdflajlfajsdlkjksdlfjlsajsdlk@example.com")
=> #<User id: nil, name: "nonononaonoanoanodnfoiandfnaofnoaodfnaondsfnasodas...", email: "jfdoasjdfkoakjsjfdokasjodkjaoskdfjasodkfjdnaoknono...", created_at: nil, updated_at: nil>

irb(main):004:0> u.valid?
=> false

演習2

長さに関するバリデーションが失敗した時、どんなエラーメッセージが生成されるでしょうか? 確認してみてください。

irb(main):005:0> u.errors.messages
=> {:name=>["is too long (maximum is 50 characters)"], :email=>["is too long (maximum is 255 characters)"]}