【问题标题】:Best way to return an array of files from Amazon S3 and sort by date?从 Amazon S3 返回文件数组并按日期排序的最佳方法?
【发布时间】:2021-03-18 18:46:49
【问题描述】:

我正在尝试从 AWS S3 存储桶中获取一组文件,然后按上传日期对它们进行排序,以选择最新文件并将其显示在视图中。

我开始做这样的事情,使用 Ruby 中的 Dir 方法

Dir['*'].sort_by{ |f| File.ctime(f) }

但是,我不知道如何将工作目录更改为 Amazon S3 目录。

也许有一种更简单的方法可以完全做到这一点?其他建议将不胜感激。

【问题讨论】:

标签: ruby-on-rails ruby amazon-s3


【解决方案1】:

如果您使用的是 AWS 开发工具包,则相当简单。

一旦你有了文件数组:

bucket.objects.sort_by &:last_modified

【讨论】:

  • 谢谢。是的,比我做的要容易得多。
  • 感谢完美,但我们如何按 DESC 或 ASC 排序?
  • nvm,我喜欢使用反向。谢谢
【解决方案2】:

bucket.objects.sort_by { |object| object.last_modified }.reverse

【讨论】:

    猜你喜欢
    • 2015-02-09
    • 2016-08-10
    • 2010-09-17
    • 1970-01-01
    • 2018-05-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-12
    相关资源
    最近更新 更多