class Media::File
Attributes
name[RW]
uid[RW]
Public Class Methods
demongoize( object )
click to toggle source
Get the object as it was stored in the database, and instantiate this custom class from it.
# File lib/aerogel/media/field_types.rb, line 33 def demongoize( object ) object.nil? ? nil : Media::File.new( object ) end
evolve( object )
click to toggle source
Converts the object that was supplied to a criteria and converts it into a database friendly form.
# File lib/aerogel/media/field_types.rb, line 45 def evolve( object ) case object when Media::File then object.mongoize else object end end
mongoize( object )
click to toggle source
Takes any possible object and converts it to how it would be stored in the database.
# File lib/aerogel/media/field_types.rb, line 39 def mongoize( object ) Media::File.new(object).mongoize end
new( mongoid_value )
click to toggle source
# File lib/aerogel/media/field_types.rb, line 10 def initialize( mongoid_value ) case mongoid_value when nil @uid, @name = nil, nil when Array @uid, @name = mongoid_value[0], mongoid_value[1] when Hash @uid, @name = mongoid_value[:uid], mongoid_value[:name] when Media::File @uid, @name = mongoid_value.uid, mongoid_value.name else raise ArgumentError.new "Failed to create Media::File value from #{mongoid_value.class}" end end
Public Instance Methods
mongoize()
click to toggle source
Converts an object of this instance into a database friendly value.
# File lib/aerogel/media/field_types.rb, line 26 def mongoize (uid.nil? && name.nil?) ? nil : [ uid, name ] end