Hier ist ein einfaches Modell.
class Event
include Mongoid::Document
field :name, type: String
field :schedule, type: String
field :description, type: String
field :active, type: Boolean, default: true
key :name
end
1. wir erstellen und veranstalten
ruby-1.9.2-p0 > event = Event.new(:name => "event1")
=> #<Event _id: event1, _type: nil, _id: "event1", name: "event1", schedule: nil, description: nil, active: true>
ruby-1.9.2-p0 > event.save!
=> true
2. Kennen Sie, finden Sie das Ereignis
ruby-1.9.2-p0 > event = Event.find("event1")
=> #<Event _id: event1, _type: nil, _id: "event1", name: "event1", schedule: nil, description: nil, active: true>
3.So aktualisieren Sie Ereignisattribute
ruby-1.9.2-p0 > event.update_attributes!(:name => "new name")
=> true
4. versuchen wir, das Ereignis zu finden
ruby-1.9.2-p0 > event = Event.find("new name")
Mongoid::Errors::DocumentNotFound: Document not found for class Event with id(s) new name.
5.ooops nicht gefunden, aber die alte Version ist noch vorhanden
ruby-1.9.2-p0 > event = Event.find("event1")
=> #<Event _id: event1, _type: nil, _id: "event1", name: "event1", schedule: nil, description: nil, active: true>
Was mache ich falsch? Ich hoffe, das ist kein Fehler.