title: Rails 3 ActiveRecord: Order by count on association
body: <p>I have a model named <code>Song</code>. I also have a model named <code>Listen</code>. A <code>Listen</code> <code>belongs_to :song</code>, and a song <code>:has_many listens</code> (can be listen to many times).</p>
  
  <p>In my model I want to define a method <code>self.top</code> which should return the top 5 songs listened to the most. How can I achieve that using the <code>has_many</code> relation?</p>
  
  <p>I'm using Rails 3.1.</p>
  
  <p>Thanks!</p>