0

クライアントの S3 バケットからファイル名を入力したい選択ボックスがあります。私のコントローラーでは、変数を次のように設定します。

@files = AWS::S3::Bucket.find("clientsbucket").objects

ビューで呼び出されると、options_for_select(@files)オブジェクトのリストが表示されますが<AWS::S3::Object:0x4f9e5b8><AWS::S3::Object:0x4f9e5a0>などの形式になります

。私の人生では、このオブジェクト情報の代わりにファイル名をリストする方法がわかりませんか?

どんな助けでも大歓迎です

4

1 に答える 1

0

さて、ビュー内の各オブジェクトのキープロパティにアクセスしてください!keyプロパティは、バケット内のファイルへのパス全体です。

objects.each do |object|
  = object.key

AWS SDKドキュメントは有益なものではありませんが、試してみてください。オブジェクトでas_treeメソッドを使用して、必要な特定のデータを取得できるようにします。

http://docs.amazonwebservices.com/AWSRubySDK/latest/AWS/S3/Tree.html

幸運を!!

于 2012-08-02T23:40:45.283 に答える