Hmm, that’s strange, Shrine shouldn’t be creating that extra directory. Could you reproduce this behaviour in a self-contained Ruby script that I can run? Something like:
s3 = Shrine::Storage::S3.new(
Shrine.storages[:s3] = s3
file = Shrine.upload(StringIO.new, :s3)
# if this doesn't raise an error, it shows the object was uploaded
# in the subdirectory equal to the bucket name
It’s possible to create a folder called “media” in the root of the bucket and upload the files to that folder?
prefix: "media" to
Shrine::Storage::S3.new should work.