排序ruby数组忽略大小写

排序ruby数组忽略大小写,ruby,Ruby,我知道有关于Stackoverflow解决类似问题的例子,但我无法使任何方法起作用。我正在为分组的集合select构建一个数组。下面的方法在遇到小写名称之前部分有效。我知道&:downcase可以在这些情况下使用,但我不知道如何在下面的情况下应用它。感谢您的帮助 <% myprojects = Project.having_production_stages.sort_by(&:formal_name) %> 假设您使用的是mysql和项目。拥有生产阶段会返回一个Acti

我知道有关于Stackoverflow解决类似问题的例子,但我无法使任何方法起作用。我正在为分组的集合select构建一个数组。下面的方法在遇到小写名称之前部分有效。我知道&:downcase可以在这些情况下使用,但我不知道如何在下面的情况下应用它。感谢您的帮助

<% myprojects = Project.having_production_stages.sort_by(&:formal_name)  %>

假设您使用的是
mysql
项目。拥有生产阶段
会返回一个
ActiveRecord::Relation
,这应该是最好的方法

Project.having_production_stages.order('LOWER(formal_name)')
如果它不是一个关系,而只是一个集合,请尝试

Project.having_production_stages.sort_by { |project| project.formal_name.downcase }

假设您使用的是
mysql
项目。拥有生产阶段
会返回一个
ActiveRecord::Relation
,这应该是最好的方法

Project.having_production_stages.order('LOWER(formal_name)')
如果它不是一个关系,而只是一个集合,请尝试

Project.having_production_stages.sort_by { |project| project.formal_name.downcase }

你一定要知道
&:
在做什么。这是一个更一般概念的具体案例的简写,在将来解决类似问题时,它将对您非常有用。您一定要了解
&:
正在做什么。这是一个更一般概念的具体案例的简写,在将来解决类似问题时,它将对您非常有用不客气