Module: Sequel::Plugins::ActiveModel::InstanceMethods
- Defined in:
- lib/sequel/plugins/active_model.rb
Constant Summary collapse
- DEFAULT_TO_PARAM_JOINER =
The default string to join composite primary keys with in to_param.
'-'.freeze
Instance Method Summary collapse
-
#after_destroy ⇒ Object
Record that an object was destroyed, for later use by destroyed?.
-
#before_create ⇒ Object
Mark current instance as destroyed if the transaction in which this instance is created is rolled back.
-
#model_name ⇒ Object
Return ::ActiveModel::Name instance for the class.
-
#persisted? ⇒ Boolean
False if the object is new? or has been destroyed, true otherwise.
-
#to_key ⇒ Object
An array of primary key values, or nil if the object is not persisted.
-
#to_model ⇒ Object
With the ActiveModel plugin, Sequel model objects are already compliant, so this returns self.
-
#to_param ⇒ Object
An string representing the object’s primary key.
-
#to_partial_path ⇒ Object
Returns a string identifying the path associated with the object.
Instance Method Details
#after_destroy ⇒ Object
Record that an object was destroyed, for later use by destroyed?
42 43 44 45 |
# File 'lib/sequel/plugins/active_model.rb', line 42 def after_destroy super @destroyed = true end |
#before_create ⇒ Object
Mark current instance as destroyed if the transaction in which this instance is created is rolled back.
49 50 51 52 |
# File 'lib/sequel/plugins/active_model.rb', line 49 def before_create db.after_rollback{@destroyed = true} super end |
#model_name ⇒ Object
Return ::ActiveModel::Name instance for the class.
55 56 57 |
# File 'lib/sequel/plugins/active_model.rb', line 55 def model_name model.model_name end |
#persisted? ⇒ Boolean
False if the object is new? or has been destroyed, true otherwise.
60 61 62 |
# File 'lib/sequel/plugins/active_model.rb', line 60 def persisted? !new? && @destroyed != true end |
#to_key ⇒ Object
An array of primary key values, or nil if the object is not persisted.
65 66 67 68 69 70 71 |
# File 'lib/sequel/plugins/active_model.rb', line 65 def to_key if primary_key.is_a?(Symbol) [pk] if pk else pk if pk.all? end end |
#to_model ⇒ Object
With the ActiveModel plugin, Sequel model objects are already compliant, so this returns self.
75 76 77 |
# File 'lib/sequel/plugins/active_model.rb', line 75 def to_model self end |
#to_param ⇒ Object
An string representing the object’s primary key. For composite primary keys, joins them with to_param_joiner.
81 82 83 84 85 |
# File 'lib/sequel/plugins/active_model.rb', line 81 def to_param if persisted? and k = to_key k.join(to_param_joiner) end end |
#to_partial_path ⇒ Object
Returns a string identifying the path associated with the object.
88 89 90 |
# File 'lib/sequel/plugins/active_model.rb', line 88 def to_partial_path model._to_partial_path end |