module Baudelaire::ModelExtension::ClassMethods

Public Instance Methods

symbolize(*fields) click to toggle source
# File lib/baudelaire/model_extension.rb, line 8
def symbolize(*fields)
  fields.each do |field|
    define_method(:"#{field}=") do |value|
      value = value.to_sym if value
      self[field] = value
    end

    define_method(:"#{field}") do
      value = self[field]

      if is_symbolizable?(value)
        value = value.to_sym
      else
        nil
      end
    end
  end
end