2012-10-25 12:11:10 +00:00
|
|
|
module JamRuby
|
|
|
|
|
class Genre < ActiveRecord::Base
|
|
|
|
|
|
2012-10-28 02:35:28 +00:00
|
|
|
self.primary_key = 'id'
|
2012-10-25 12:11:10 +00:00
|
|
|
|
2012-10-30 05:42:16 +00:00
|
|
|
# bands
|
2014-12-05 07:50:03 +00:00
|
|
|
# has_many :genre_players, class_name: "JamRuby::GenrePlayer"
|
|
|
|
|
# has_many :bands, class_name: "JamRuby::Band", through: :genre_players, condition: ['player_type = ?', 'JamRuby::Band']
|
|
|
|
|
# has_many :users, class_name: "JamRuby::User", through: :genre_players, condition: ['player_type = ?', 'JamRuby::User']
|
2012-10-30 05:42:16 +00:00
|
|
|
|
2014-05-06 21:17:26 +00:00
|
|
|
|
|
|
|
|
# music sessions
|
|
|
|
|
has_many :music_sessions, :class_name => "JamRuby::MusicSession"
|
|
|
|
|
|
2012-12-02 07:06:51 +00:00
|
|
|
# genres
|
|
|
|
|
has_and_belongs_to_many :recordings, :class_name => "JamRuby::Recording", :join_table => "recordings_genres"
|
|
|
|
|
|
2015-07-27 15:02:37 +00:00
|
|
|
# teachers
|
|
|
|
|
has_and_belongs_to_many :teachers, :class_name => "JamRuby::Teacher", :join_table => "teachers_genres"
|
|
|
|
|
|
2014-11-04 20:55:12 +00:00
|
|
|
# jam tracks
|
2015-08-09 18:37:43 +00:00
|
|
|
has_many :genres_jam_tracks, :class_name => "JamRuby::GenreJamTrack", :foreign_key => "genre_id"
|
|
|
|
|
has_many :jam_tracks, :through => :genres_jam_tracks, :class_name => "JamRuby::JamTrack", :source => :genre
|
2014-03-05 23:18:53 +00:00
|
|
|
|
|
|
|
|
def to_s
|
|
|
|
|
description
|
|
|
|
|
end
|
2012-10-25 12:11:10 +00:00
|
|
|
end
|
2014-12-05 07:50:03 +00:00
|
|
|
end
|