草庐IT

ruby - 检查 s3 存储桶中是否存在文件夹

如何使用RubyonRails检查我的s3存储桶中是否存在某个文件夹?我正在使用AWS:S3官方gem初始化全局连接后AWS::S3::Base.establish_connection!(:access_key_id=>'my_key_id',:secret_access_key=>‘my_secret’)我的桶名为:myfirstbucket内部文件夹名为:my_foldermy_folder中的文件名为:my_pic.jpg当我尝试检查my_pic.jpg是否存在时,它工作得很好s3object.exists?“/my_folder/my_pic.jpg”,“myfirstbuc

ruby - AWS Ruby 开发工具包核心 : Upload files to S3

我想使用AWS-SDK-CORErubySDK将文件(任何文件,可以是.txt、.mp4、.mp3、.zip、.tar...等)上传到AWSS3|这是我的代码:require'aws-sdk-core'Aws.config={:access_key_id=>MY_ACCESS_KEY:secret_access_key=>MY_SECRET_KEY,:region=>'us-west-2'}s3=Aws::S3.newresp=s3.put_object(:bucket=>"mybucket",:key=>"myfolder/upload_me.sql",:body=>"./uploa

ruby-on-rails - 使用 Heroku 设置 Paperclip Amazon S3

has_attached_file:image,:storage=>:s3,:s3_credentials=>"#{RAILS_ROOT}/config/s3.yml",:path=>"/:style/:filename"我不确定:path=>"/:style/:filename"是什么。我还想包括这张附加图片的样式,是不是:path是什么?我想要的样式是这样的::styles=>{:medium=>"275x275>",:thumb=>"175x155>"}基本上,这里发生的事情是我在heroku上进行设置,我不得不使用S3,它看起来很简单,只是不习惯这种附件约定。此外,我刚刚注册了

ruby-on-rails - 从 S3 下载文件到 Rails 4 应用程序

我有一个运行日常任务并生成多个文件的AWS虚拟机。我希望我的Rails应用程序下载这些文件并将它们放在应用程序内的文件夹中。Ruby中是否有可以执行此操作的gem或方法?我知道如何使用s3cmd在bash中执行此操作,我想我可以创建一个脚本来以这种方式获取它们,但正在寻找一种更原生的Rails方式。我正在为应用程序使用这些文件中的数据,但我不希望用户能够下载它们。 最佳答案 aws-sdkv2gem为从AmazonS3下载对象提供了一个简单的界面。require'aws-sdk's3=Aws::S3::Resource.new(re

ruby-on-rails - 使用jquery文件上传将原始文件直接上传到s3后如何使用carrierwave创建缩略图

我正在通过jquery_file_upload上传图片(Railscast第383集)上传工作完美,我在回调函数中得到了url问题是:我想在直接上传到s3后创建一些缩略图为此我假设:服务器必须从s3读取图像服务器必须创建缩略图服务器必须将缩略图直接存储在s3中服务器必须获得回调并相应地显示缩略图。服务器必须存储创建的缩略图的字段现在,在图像完成上传图像Controller回调后调用:defcreate#gettheurlfromthecallbcack#e.g:image[image_source]=https://.s3.amazonaws.com/uploads/myimage.p

ruby-on-rails - 让 imgkit + 回形针 + s3 工作。回形针无法识别 "snapshot"

编辑:一个问题是我需要做r=Resource.where(id:3).first#我正在尝试使用imgkit+paperclip+s3获取URL的快照。我能够获取快照,并成功将它们上传到回形针。例如,本文底部的IRBsession成功将指定URL的快照上传到我的S3存储桶。但是,我正在尝试显示图像,但我总是得到一个missing.png图像。我在下面给出的IRBsession中进行了实验,发现了一些有趣的东西。我认为我没有正确保存resource.snapshot,因为如果我在不同的变量名下找到资源,我将无法再次获取该url(查看下面的IRBsession)。我只想知道如何获取上传到S

ruby-on-rails - 无需 assets_sync 自动将 Assets 上传到 S3

我刚刚第一次部署到Heroku,除了我的图像,Assets工作。当我发现这个要点时,我正在阅读有关如何将Assets移动到s3(然后使用云端缓存它们)的信息:https://gist.github.com/schneems/9374188“我讨厌asset_sync”Usingassetsynccancausefailures,isdifficulttodebug,un-needed,andaddsextracomplexity.Don'tuseit.Insteadusehttps://devcenter.heroku.com/articles/using-amazon-cloudfr

ruby-on-rails - 在 Amazon S3 carrierwave 上重新上传图片

我已将图像上传到amazons3bucket。当我尝试recreate_versions!时,它给了我一个nilbody异常。我认为这是由于我们代码中之前的uploader设置发生了变化。但是,当我执行pr.image.url时,它仍然会给我原始图像,所以我尝试的如下:beginUser.all.eachdo|pr|ifpr.user.present?pr.remote_avatar_url=pr.avatar.urlpr.save!endendrescueend但是它抛出一个错误:ActiveRecord::RecordInvalid:Validationfailed:Avatart

Ruby:回形针、S3 和深度克隆

我有一个主题模型,其中包含许多Assets。Assets使用Paperclip并将其文件内容存储在我的AmazonAWS-S3系统中。我也在使用deep_clone,因为我的客户能够复制内置主题,然后根据自己的喜好进行修改。所有deep_clone的东西都运行良好,但是当我deep_cloneAssets时,旧文件内容不会添加到我的S3存储桶中。记录已保存到数据库中,但由于文件内容未使用新ID保存,因此file.url属性指向无效文件。我试过手动调用回形针的保存和创建方法,但我无法弄清楚如何让回形针将文件“推”回存储桶,因为它现在有了新的ID等....require'open-uri'

ruby - 当文件大小大于 X 时 Rmagick 压缩而不写入(上传到 S3)

我想在图像大小大于某个数量(即1000000-1MB)时压缩图像。我看到compress与Image对象中的write方法一起使用。我的图像在内存中,我不想将它写入我的服务器,而是写入AmazonS3。此代码有效。它将图像上传到我的s3路径,但是我想包括文件大小检查和压缩:photo=Magick::Image.read(mmkResourceImage.href).firsts3=AWS::S3.newbucket=s3.buckets[bucketName]obj=bucket.objects[key]obj.write(photo)请让我知道是否有其他方法可以实现此目的。