Mam szereg członkostw. W każdym członkostwie jest grupa. Muszę posortować tę tablicę członkostwa według nazwy grupy. Próbowałem wielu różnych sposobów, a najnowszy sposób jest następujący:Jak sortujesz alfabetycznie tablicę, używając sort_by w ruby?
@memberships.sort_by! { |m| m.group.name }
Jednak nie sortuje według nazwy. Wygląda na to, że losowo sortuje tablicę. belongs_to
- Członkostwo: grupa
- Grupa has_many: cżłonkostwo
@memberships jest równa:
[
{
id: 2141,
user_id: 491,
group_id: 271,
member_type: "member",
group: {
id: 271,
name: "Derek's",
privacy: "open",
bio_image_url: "/bio_images/medium/missing.png?1340285189",
member_count: 1,
upcoming_checkins_count: 0
}
},
{
id: 2201,
user_id: 221,
group_id: 291,
member_type: "member",
group: {
id: 291,
name: "Rounded Developement",
privacy: "closed",
bio_image_url: "/groups/medium/291/bioimage.jpg?1340736175",
member_count: 7,
upcoming_checkins_count: 0
}
}
]
UWAGA: to działa -> @ memberships.sort_by! {| m | m.group.id}
Zamówi tablicę na podstawie pliku group.id, więc może ma to coś wspólnego z sortowaniem alfabetycznym?
Każda pomoc będzie mile widziana.
Przyznawaj sobie odpowiedź, gdy system ci pozwoli. –
Zrobi. Nadal trzeba czekać dzień ... –
Downcase to sposób na +1 – earlonrails