将 aws url 插入数组

Insert aws urls into an array

我目前有一个可用的音频播放器,它使用回形针附件上传到 aws。我想访问所有轨道的所有 urls 并将它们插入数组或变量中以用于我的 js 音频播放器。以下是我尝试过的以下代码:

//incorrect code
 @tracks.each do |m|
  @tracks_url_list = m.audio
 end

我也试过了

//incorrect code
@tracks.each do |m|
  @tracks_url_list = Array[m.audio]
 end

当我实施时

<% @tracks.each do |m| %>
  <%= m.audio %>
<% end %>

在index.html.erb中显示 http://s3.amazonaws.com/musicstreamdata/tracks/audios/000/000/008/original/11_Acid_Rain_%28Prod._by_Jake_One%29_%28DatPiff_Exclusive%29.mp3?1457290530

和其他曲目链接也会显示。但是,当我尝试将它存储在一个变量或数组中时,它只为一首曲目显示一个 url。我可能遗漏了一些明显的东西,但我如何才能得到它,以便我可以将我的曲目中的所有 url 存储在一个数组中,如下所示:

@track_url_lists = [track_one_url, track_two_url, track_three_url, etc. ]

感谢任何帮助

尝试以下其中一项:

@tracks_url_list = @tracks.collect(&:audio)

@tracks_url_list = @tracks.inject([]) each do |url_list, track|
  url_list << track.audio
  url_list
end

参考Enumerable#inject了解更多信息