Что говорит Симона.
Я только что вставил драгоценный камень денег в свой проект, и вы также можете сохранить его как тип денег.
class Product
include Mongoid::Document
field :price, type: Money
end
Money.class_eval do
# Converts an object of this instance into a database friendly value.
def mongoize
[cents, currency.to_s]
end
class << self
# Get the object as it was stored in the database, and instantiate
# this custom class from it.
def demongoize(object)
cur = object[1] || Money.default_currency
Money.new(object[0], cur)
end
# Takes any possible object and converts it to how it would be
# stored in the database.
def mongoize(object)
case object
when Money
object.mongoize
else object
end
end
# Converts the object that was supplied to a criteria and converts it
# into a database friendly form.
def evolve(object)
case object
when Money then object.mongoize
else object
end
end
end
end