Guest User

Untitled

a guest
Jun 21st, 2018
190
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.99 KB | None | 0 0
  1. require 'mongoid'
  2.  
  3. Mongoid.configure { |config| config.master = Mongo::Connection.new.db 'mongoid_test' }
  4.  
  5. class User
  6. include Mongoid::Document
  7.  
  8. field :email
  9. field :name
  10.  
  11. validates_uniqueness_of :email
  12. end
  13.  
  14. User.create :email => 'example@example.com'
  15.  
  16. user = User.create # => #<User _id: 4cdee1080de0690f96000002, email: nil, name: nil>
  17. user.update_attributes :email => 'example@example.com' # false
  18.  
  19. user.errors # => {:email=>["is already taken"]}
  20. user.attributes # => {"_id"=>BSON::ObjectId('4cdee1080de0690f96000002'), "email"=>"example@example.com"}
  21. user.errors.clear # => {}
  22. user.reload # => #<User _id: 4cdee1080de0690f96000002, email: nil, name: nil>
  23.  
  24. user.update_attributes :name => 'Chris' # => true
  25. user.attributes # => {"_id"=>BSON::ObjectId('4cdee1080de0690f96000002'), "name"=>"Chris"}
  26.  
  27. # All as expected, until...
  28. user.reload # => #<User _id: 4cdee1080de0690f96000002, email: "example@example.com", name: "Chris">
  29. # Uh-oh!
  30.  
  31. User.where(:email => 'example@example.com').count # => 2
Add Comment
Please, Sign In to add comment