Ruby on rails Ruby-解析出一个城市的位置列表,然后获取该城市列表并解析出每个城市的位置

Ruby on rails Ruby-解析出一个城市的位置列表,然后获取该城市列表并解析出每个城市的位置,ruby-on-rails,arrays,ruby,hash,Ruby On Rails,Arrays,Ruby,Hash,我目前正在尝试为我的业务地点创建目录页。我可以很容易地列出所有的位置,但更愿意列出位置的状态,然后在下面列出该状态下的位置城市。最后,在状态下面,列出位置名称 我现在得到了下面这行的所有位置 @locations = @brand.locations.all 然后我为州和城市创建两个空白数组 @states = [] @cities = [] 一旦我创建了数组,我想遍历各个位置,将州和城市附加到相应的数组中 @locations.each do |location| @states &l

我目前正在尝试为我的业务地点创建目录页。我可以很容易地列出所有的位置,但更愿意列出位置的状态,然后在下面列出该状态下的位置城市。最后,在状态下面,列出位置名称

我现在得到了下面这行的所有位置

@locations = @brand.locations.all
然后我为州和城市创建两个空白数组

@states = []
@cities = []
一旦我创建了数组,我想遍历各个位置,将州和城市附加到相应的数组中

@locations.each do |location|
  @states << location.state
  @cities << location.city
end
@locations.each do| location|
@各州看看并:

Hash[@locations.all.group_by(&:state).map{k,v|[k,v.group_by(&:city)]}

这会产生如下结果:

{
  "NY": {
    "Schenectady": [ ... locations in schenectady new york ... ],
    "Manhattan": [ ... locations in manhattan new york ...]
  },
  "TX": {
    "Austin": [ ... locations in austin texas ... ]
  }
}

他正忙着写一个低劣的答案