草庐IT

CarrierWave

全部标签

ruby-on-rails - CarrierWave Backgrounder 没有将版本图像上传到 AWS S3

我使用带有RMagic的carrierwave0.10.0gem在AWSS3上上传图像。一切正常,只是在AWSS3上上传花费了太多时间。所以想到使用carrierwavebackgrounder在后台上传图片。我设置了carrierwavebackgrounder(0.4.2)但在这一个中我的原始文件总是上传到S3但该图像的版本永远不会上传到S3。这是我的carrierwave_backgrounder.rbCarrierWave::Backgrounder.configuredo|c|c.backend:sidekiq,queue::carrierwaveend我已经在sidekiq

ruby-on-rails - Rails 4 - 如何使用载波在 froala 编辑器中上传图像?

我不知道如何在froala编辑器中上传图片。我有carrierwave用于将图像上传到谷歌云存储以用于我的应用程序的其他部分,现在我希望在froala编辑器中上传图像也能正常工作。这是我到目前为止所做的上传图片classPostImageUploader我做了一个后期图片模型classPostImage5.megabyteserrors.add(:picture,"shouldbelessthan5MB")endendend我在我的postController中制作了attach和detach方法,但我不知道在它们里面放什么。defattachenddefdetachenddefima

ruby-on-rails - 载波图像维度

如何获取当前carrierwave实例的宽度和高度?像这样:car_images.eachdo|image|image_tag(image.photo_url,:width=>image.photo_width,:height=>image.photo_height)end不幸的是image.photo_width和image.photo_height不工作。我需要指定图像的宽度和高度,这是我使用的jquery插件所必需的。 最佳答案 合并https://github.com/jnicklas/carrierwave/wiki/Ho

ruby-on-rails - Carreirwave - 如何直接从保存的文件名创建版本名称

我正在为已上传到我的应用程序的文件创建缩略图。图像名称中有一个时间戳代码。当我运行recreate_versions时,生成的缩略图也有时间戳,但它使用当前时间戳,这使得缩略图名称与原始文件名不同。所以我认为解决方法是为缩略图自定义文件名。基本上有'thumb_'+'原始文件名'。version:thumbdoprocess:resize_to_limit=>[110,nil]deffull_filename(for_file=model.image_value.file)'thumb_'+File.basename(model.image_value.path).to_sendend

ruby-on-rails - Carrierwave - "uploading"来自字符串的文件

我网站中的用户可以上传自己的模特照片或从图库中选择。当用户从库中选择时,我将文件名作为字符串发送到服务器{file:{url:'url.jpg'}}。我还没有找到carrierwave可以只更新模型文件而不上传它的方法。我可以在我的模型中编写一个条件来检查该参数是否存在,然后是model.file=File.open('str.jpg')。从安全角度来看,这不好吗?我如何才能“上传”文件,或仅更新文件属性,以引用服务器上已有的文件?谢谢! 最佳答案 您使用File.open的解决方案可行,但您应该使用File.basename验证该

ruby-on-rails - 不同文件类型的载波文件上传

我的FileUploader如下:classFileUploader我从carrierwavegithub页面上得到了这个。它主要工作,但如果我不想要不同的版本怎么办?如果它是pdf,我基本上只想执行某些过程,如果它是图像,我只想执行某些过程。将来我也可能允许其他类型的文件,所以如果我也能有一种简单的方法来做到这一点,那就太棒了。例如,如果是图像,我可能想使用imgoptim,如果是pdf,我可能想使用pdf优化库,等等。我试过:iffile.content_type="application/pdf"#Dopdfthingselsiffile.content_type.start_w

ruby-on-rails - Ruby block 语法错误

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Rubyblockandunparenthesizedarguments我不确定我是否理解这个语法错误。我正在使用Carrierwave来管理Rails应用程序中的一些文件上传,但我似乎错误地向其中一种方法传递了一个block。这是CarrierwaveDocs中的示例:version:thumbdoprocess:resize_to_fill=>[200,200]end这是我得到的:version:full{process(:resize_to_limit=>[960,960])}version:half{

ruby-on-rails - 使用 seed.rb 文件创建记录时出现 CarrierWave::FormNotMultipart 错误

我有一个包含image列的模型。我正在使用CarrierWave上传图片(我正在关注此railscast以执行此操作。现在,我想使用seed.rb文件创建一些默认记录,但我未能为图像提供正确的parh/url。因此,我在列表项app/public/images/文件夹中有图像,这是seed.rb文件中的代码:gems={test1:{name:'test1',description:'test1',image:'/public/images/test1.png',},test2:{name:'test2',description:'test2',image:'/public/image

ruby-on-rails - 使用 CarrierWave 检索图像高度

我需要能够放置处理过的图像的尺寸。我的ImageUploader类中有:version:postdoprocess:resize_to_fit=>[200,nil]end有没有一种方法可以获得与此类似的图像尺寸?height=@picture.image_height(:post) 最佳答案 您可以调整并使用此处描述的方法:http://code.dblock.org/carrierwave-saving-best-image-geometry它添加了一个进程,然后调用Magick的方法来获取图像几何。代码:version:post

ruby-on-rails - Rails 3. 在生产中上传文件时获取 Errno::EACCES 权限被拒绝

该应用程序在开发中运行良好,但在生产中,当我尝试使用Carrierwave上传文件时,出现Errno::EACCESPermissionDenied错误。我确定它与权限有关。如何设置允许文件上传的权限?pdf_uploader.rbdefstore_dir"#{Rails.root}/uploads/#{model.id}"enddefcache_dir"#{Rails.root}/tmp/uploads/cache/#{model.id}"end 最佳答案 chmod-R777PATH_TO_APP/uploadschmod-R7