Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- id
- subject
- message
- valediction
- sent_people_count
- deliver_by
- geotarget
- event_id
- list_id
- processed_at
- deleted_at
- created_at
- updated_at
- class Notification < ActiveRecord::Base
- # common methods/validations/associations
- ...
- def self.relate_to_details
- class_eval <<-EOF
- has_one :details, :class_name => "#{self.class.name}Detail"
- accepts_nested_attributes_for :details
- default_scope :include => :details
- EOF
- end
- end
- class SMS < Notification
- relate_to_details
- # sms specific methods
- ...
- end
- class Twitter < Notification
- relate_to_details
- # twitter specific methods
- ...
- end
- class Email < Notification
- # email specific methods
- ...
- end
- class SMSDetail < ActiveRecord::Base
- belongs_to :SMS, :class_name => "SMS"
- # sms specific validations
- ...
- end
- class TwiterDetail < ActiveRecord::Base
- belongs_to :twitter
- # twitter specific validations
- ...
- end
- has_one :details, :class_name => "#{self.class.name}Detail"
- has_one :details, :class_name => "#{self.name}Detail"
Add Comment
Please, Sign In to add comment