public
Created

database-less models in your controllers/views

  • Download Gist
model.rb
Ruby
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
# sometimes you want a non-db backed model in rails. you can put this in
# lib/model.rb and then:
#
# file: app/models/signup.rb
#
# class Signup < Model
# validates_presence_of :email
# end
#
 
class Model
include ActiveModel::Validations
include ActiveModel::Conversion
extend ActiveModel::Naming
 
def model_name
self < Model ? self.name.gsub('Model::', '') : super
end
 
def initialize(attributes = {})
unless attributes.blank?
attributes.each{|name, value| send("#{ name }=", value)}
end
end
 
def persisted?
false
end
end

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.