Sorting by inner has_many through attribute

Hello everyone,

For this model:

class User < ActiveRecord::Base

has_many :component_users, :dependent => :destroy
has_many :components, :through => :component_users, :conditions =>
[‘components.active = ?’,true]

accepts_nested_attributes_for :component_users, :reject_if => lambda
{ |a| a[:components].blank? || a[:components]
[:name].blank? }, :allow_destroy => true
end

How can I sort a user.component_users by a order attribute on the
Component model?

Like user.component_users.sort{|a,b| a.component.order <=>
b.component.order}

Thanks

Thiago