Class Index [+]

Quicksearch

ActiveModel::Conversion

Active Model Conversions

Handles default conversions: to_model, to_key and to_param.

Example

Let’s take for example this non persisted object.

  class ContactMessage
    include ActiveModel::Conversion

    # ContactMessage are never persisted in the DB
    def persisted?
      false
    end
  end

  cm = ContactMessage.new
  cm.to_model == self # => true
  cm.to_key           # => nil
  cm.to_param         # => nil

Public Instance Methods

to_key() click to toggle source

Returns an Enumerable of all key attributes if any is set, regardless if the object is persisted or not.

Note the default implementation uses persisted? just because all objects in Ruby 1.8.x responds to :id.

    # File lib/active_model/conversion.rb, line 41
41:     def to_key
42:       persisted? ? [id] : nil
43:     end
to_model() click to toggle source

If your object is already designed to implement all of the Active Model you can use the default to_model implementation, which simply returns self.

If your model does not act like an Active Model object, then you should define :to_model yourself returning a proxy object that wraps your object with Active Model compliant methods.

    # File lib/active_model/conversion.rb, line 32
32:     def to_model
33:       self
34:     end
to_param() click to toggle source

Returns a string representing the object’s key suitable for use in URLs, or nil if persisted? is false

    # File lib/active_model/conversion.rb, line 47
47:     def to_param
48:       persisted? ? to_key.join('-') : nil
49:     end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.