jam-cloud/ruby/lib/jam_ruby/models/music_session_perf_data.rb

32 lines
804 B
Ruby
Raw Normal View History

2013-04-16 02:12:16 +00:00
require 'securerandom'
2013-03-27 15:08:43 +00:00
module JamRuby
2013-03-27 15:09:14 +00:00
class MusicSessionPerfData < ActiveRecord::Base
2013-03-27 15:08:43 +00:00
self.primary_key = 'id'
2013-04-16 02:12:16 +00:00
2013-05-06 00:17:16 +00:00
attr_accessible :uri
2013-03-27 15:09:14 +00:00
2014-05-06 13:34:38 +00:00
belongs_to(:music_session,
:class_name => "JamRuby::MusicSession",
:foreign_key => :music_session_id)
2013-03-27 15:08:43 +00:00
# mount_uploader :uri, PerfDataUploader
2013-04-16 02:12:16 +00:00
2014-05-06 13:34:38 +00:00
validates :music_session, :presence => true
2013-05-06 00:17:16 +00:00
validates :client_id, :presence => true
validates :uri, :presence => true
2013-04-16 02:12:16 +00:00
before_validation(:on => :create) do
self.created_at ||= Time.now
self.id = SecureRandom.uuid
2013-05-06 00:17:16 +00:00
self.uri = "perf_data/#{self.music_session_id}/#{self.client_id}-#{self.created_at.to_i}"
2013-04-16 02:12:16 +00:00
end
2013-03-27 15:08:43 +00:00
end
def music_session_user_history
@msuh ||= JamRuby::MusicSessionUserHistory.find_by_client_id(self.client_id)
end
2013-03-27 15:08:43 +00:00
end