/ / Alphabétique Tri des objets de collection par méthode de modèle personnalisé - ruby-on-rails, tri, méthodes, collections, modèles

Alphabétique Trier des objets de collection par la méthode du modèle personnalisé - ruby-on-rails, tri, méthodes, collections, modèles

J'ai une méthode dans mon User modèle appelé display_name. Dans mon contrôleur, je veux trier tous les User objets par leur display_name par ordre alphabétique. display_name retourne une chaîne, comment puis-je faire cela?

Utilisateur

  def display_name
if !addressbook.b_company.nil?
if addressbook.b_company.downcase[0..3] == "the "
addressbook.b_company[4..-1]
else
addressbook.b_company
end
else
"#{addressbook.b_lastname}, #{addressbook.b_firstname}"
end
end

Réponses:

1 pour la réponse № 1

Utilisation sort_by et passez votre méthode:

@users.sort_by(&:display_name).each do |user|
# your code here
end