2013-05-08 66 views
0

我正在使用亞馬遜S3存儲並且有意外的行爲:storage.exists()爲目錄返回False。我做的一切正確嗎?據我瞭解django文檔,它應該返回True https://docs.djangoproject.com/en/dev/ref/files/storage/s3boto意外的行爲

from storages.backends.s3boto import S3BotoStorage 

s = S3BotoStorage(bucket='bucketname') 
s.listdir('.') 
    ([u'test_elf'], [u'327.jpg',u'avatar2.jpg']) 
s.exists(u'avatar2.jpg') 
    True 
s.exists(u'test_elf') 
    False <-- ?? 

回答

0

s3只模擬文件夾。如果您對S3

avatar1.jpg 
avatar2.jpg 
folder -- 
      avatar3.jpg 
      avatar4.jpg 
one_more.png 
last_image.jpg 

文件的這種結構比你有你的剷鬥6個邏輯實例:

avatar1.jpg 
avatar2.jpg 
folder/avatar3.jpg 
folder/avatar4.jpg 
one_more.png 
last_image.jpg 

我想你可以自由地在根至極創建文件「文件夾」,將與通常的文件系統結構不相容,但可能在s3上。