2010-11-05 5 views
4

J'ai un problème et un modèle de solution. Le problème a beaucoup de solutions et la solution appartient au problème.Rails ordre basé sur l'association

J'ai besoin d'obtenir le problème récemment résolu, c'est-à-dire d'obtenir les dernières solutions X et d'avoir un problème. Je suis à peu près sûr qu'il y a un moyen de le faire avec named_scopes mais je ne peux pas le comprendre.

Toute aide est vraiment apprécié :-)

Merci,

Nicolás Hock I.

Répondre

11

En fait, je suis le travail de named_scope:

named_scope :solved_recently, :joins => :solutions, :order => "solutions.created_at DESC" 
# Problem.solved_recently 

Merci quand même @Jacob :)

+0

Cela. Est. Impressionnant! –

1

Je pense que cela devrait fonctionner:

x = #some number 
solutions = Solution.find(:all, :order => ['created_at desc'], :limit => x) 
problems = solutions.map {|solution| 
    solution.problem 
} 
Questions connexes