2013-05-03 6 views
0

Я использую жемчужину aws-sdk и пытаюсь проверить, существует ли файл, загруженный в ведро. Я также использую Paperclip 2.7.Rails: неопределенный метод `существует? ' для AWS :: S3 :: S3Object: Class

Этот метод, кажется, не работает:

if record.image and AWS::S3::S3Object.exists? record.image, "mybucket-dev" 

Я думаю AWS :: S3 :: S3Object.exists? был метод из старого драгоценного камня aws-s3?

Какой метод можно использовать для проверки наличия файла в ведре?

В самом деле, реальный путь, который я хочу, чтобы проверить что-то вроде этого:

record.image.to_file(:tiny).path 

(крошечная версия моего образа)

Спасибо.

ответ

3

Попробуйте

AWS::S3.new.buckets["bucket"].objects["file path on s3"].exists? 

Приведенный выше код будет возвращать true, если файл существует в противном случае возвращает false.

Для дальнейшего использования обратитесь к http://docs.aws.amazon.com/AWSRubySDK/latest/AWS/S3/S3Object.html#

Надеюсь, что это поможет.

0

Пожалуйста, попробуйте этот

OBJ = AWS :: S3 :: Bucket.find ("bucket_name")

obj.objects [object_name] .exists?

Это вернет true или false.

ИЛИ

AWS :: S3 :: S3Object.exists? «путь к файлу», «bucket_name»

0

Aws :: S3 :: Object.new (регион: 'ap-southeast-1', credentials: 'cred', key: 'key', bucket_name: 'bucket').существует?

Смежные вопросы