He shoots. He scores! Thanks much for the insight.
-Chris On Feb 14, 12:15 pm, Lasse Bunk <[email protected]> wrote: > Try: > > named_scope :without_active_players, :conditions => "NOT EXISTS(SELECT * > FROM players WHERE team_id=teams.id AND status='active')", :order => "name" > > Does this work? > > Lasse > > 2010/2/14 cpr <[email protected]> > > > > > I have a Teams that has_many Players. > > > I need to get the list of Teams that have no active players (whether > > they have 0 players or they have a lot of players all of whom are non- > > active). > > > Can't figure out the conditions for doing this other than subtracting > > the ones with active players from the list of all teams. The issue is > > that I don't want teams with *some* non-active players, I need the > > teams which have only non-active players. > > > Here's how I'm doing it now. I assume that there's a better way so > > will appreciate seeing the magic. > > > Thanks, > > > -Chris > > > Player < AR::Base > > > validates_inclusion_of :status, :in => > > [:active, :inactive, :injured, :dead] > > > end > > > Team < AR::Base > > > has_many :players > > > named_scope :with_active_players, { > > :include => :players, > > :conditions => ["players.status = ?", "active"], > > :group => "teams.id", # no dups > > :order => 'teams.name' > > } > > > def self.without_active_players > > (Team.find(:all) - Team.with_active_players).sort_by { |t| > > t.name } > > end > > > end > > > -- > > You received this message because you are subscribed to the Google Groups > > "Ruby on Rails: Talk" group. > > To post to this group, send email to [email protected]. > > To unsubscribe from this group, send email to > > [email protected]<rubyonrails-talk%2Bunsubscrib > > [email protected]> > > . > > For more options, visit this group at > >http://groups.google.com/group/rubyonrails-talk?hl=en. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

