class Album < ActiveRecord::Base belongs_to :artist has_many :tracks, :order => 'bonus ASC, position ASC', :dependent => :destroy has_many :local_brainz_cached_releases, :class_name => 'LocalBrainz::CachedRelease', :dependent => :destroy has_many :album_formats has_many :release_formats, :through => :album_formats default_scope where(:master => true) scope :with_non_masters, where(:master => [true, false]) def self.with_format f joins(:release_formats).where(:release_formats => { :hash => f.to_s }) end end