Je travaille avec Ruby on Rails 2.3.8 et j'ai une collection qui est construit à partir de deux autres collections, comme suit:Comment trier la collection par attribut created_at
@coll1 = Model1.all
@coll2 = Model2.all
@coll = @coll1 << @coll2
Maintenant, je voudrais tiens à trier cette collection par attribut created_at
dans l'ordre descendant. Alors, je l'ai fait ce qui suit:
@sorted_coll = @coll.sort {|a,b| b.created_at <=> a.created_at}
Et j'ai l'exception suivante:
undefined method `created_at' for #<Array:0x5c1d440>
eventhought il existe pour ces modèles.
Quelqu'un pourrait-il m'aider s'il vous plaît?
Si vous trier un tableau d'objets vous devez utiliser 'sort_by' au lieu de' sort'. Il y a des fois que 'sort' est plus rapide, mais l'accès aux objets n'en fait pas partie. –