Guest User

Untitled

a guest
Mar 7th, 2018
272
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.59 KB | None | 0 0
  1. #This model is user.rb
  2.  
  3. class User < ActiveRecord::Base
  4. #Max & min lengths for all fields
  5. SCREEN_NAME_MIN_LENGTH = 4
  6. SCREEN_NAME_MAX_LENGTH = 20
  7. PASSWORD_MIN_LENGTH = 4
  8. PASSWORD_MAX_LENGTH = 40
  9. EMAIL_MAX_LENGTH = 50
  10. SCREEN_NAME_RANGE = SCREEN_NAME_MIN_LENGTH..SCREEN_NAME_MAX_LENGTH
  11. PASSWORD_RANGE = PASSWORD_MIN_LENGTH..PASSWORD_MAX_LENGTH
  12.  
  13. validates_uniqueness_of :screen_name, :email
  14. validates_length_of :screen_name, :within => SCREEN_NAME_RANGE
  15. validates_length_of :password, :within => PASSWORD_RANGE
  16. validates_length_of :email, :maximum => EMAIL_MAX_LENGTH
  17.  
  18.  
  19. validates_format_of :screen_name,
  20. :with => /ˆ[A-Z0-9_]*$/i,
  21. :message => "must contain only letters, " + "numbers, and unscores"
  22.  
  23. validates_format_of :email,
  24. :with => /ˆ[A-Z0-9._%-]+@([A-Z0-9-]+\.)+[A-Z]{2,4}$/i,
  25. :message => "must be a valid email address"
  26. end
  27.  
  28.  
  29.  
  30. -----------------
  31.  
  32. I cant user.save in the console as you can see below. I want to know where the mistake is.
  33.  
  34. ----------------
  35.  
  36. Shanes-iMac:~/rubydev/rails_space shanekillian$ script/console
  37. Loading development environment.
  38. >> user = User.new(:screen_name => "rails_rocks",
  39. ?> :email => "rails@example.com",
  40. ?> :password => "foobar")
  41. => #<User:0x356ed7c @new_record=true, @attributes={"screen_name"=>"rails_rocks", "password"=>"foobar", "email"=>"rails@example.com"}>
  42. >> user.save
  43. => false
  44. >> user.errors.full_messages
  45. => ["Screen name must contain only letters, numbers, and unscores", "Email must be a valid email address"]
  46. >>
Add Comment
Please, Sign In to add comment