我目前正试图整理一个显示S3桶中所有项目的方法,并且由于我已经在脚本中定义了桶地址,因此我认为最好引用该方法,而不是将地址放入我的清单方法中。但是,当我这样做时,我收到错误
ArgumentError: :bucket must not be blank
我觉得我遗漏了一些明显的东西,当然我不必把整个地址附加到我的参数中?以下是相关的(?)代码。
def bucket_name
'textract-console-eu-central-xxxxxxxxx'
end
def s3_resource
@s3_resource ||= ::Aws::S3::Resource.new(client: s3_client)
end
所讨论的代码
def list_bucket_objects(s3_resource, bucket_name:'')
puts s3_resource.bucket(bucket_name).objects(prefix:'', delimiter: '').collect(&:key)
end
end
您在这里重写bucket_name
:
def list_bucket_objects(s3_resource, bucket_name:'')
^
去掉第二个参数,就可以了。