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