Tag: 回形针

使用Paperclip和Rails,Google Cloud Storage请求速度很慢

我有一个Rails应用程序,它使用Google云端存储来存储图像。 每个视图大约有8个图像,当用户尝试加载页面时,由于对GCS的请求,完成所需的时间超过5秒。 Paperclip通过以下配置发出请求: config.paperclip_defaults = { storage: :fog, fog_credentials: { google_storage_access_key_id: myAccessKey, google_storage_secret_access_key: mySecretKey, provider: ‘Google’ }, fog_public: true, fog_directory: ‘mybucket’ } 在我看来,我用这种方式调用每个图像: 有没有更快的方法来实现相同的结果? 懒惰负载在我看来是一个解决方法而不是解决方案,我错了吗? 这里New Relic臭名昭着的分析(绿色属于谷歌云存储请求)

‘identify’命令无法识别Paperclip :: NotIdentifiedByImageMagickError图像

当我删除与其关联的图像并且我选择另一个时,我在编辑模型时遇到此错误: Paperclip::NotIdentifiedByImageMagickError in Admin/packsController#update Chrysanthemumprueba4.jpg is not recognized by the ‘identify’ command. C:/Users/…/vendor/plugins/thoughtbot-paperclip-fc792c8/lib/paperclip/geometry.rb:24:in `from_file’ 但是当我创建一个新包并为其选择图像时,它可以正常工作。 我有两个表:pack和pack_images,pack_images有相关包的照片,这里是关系: class Pack :destroy end class PackImage “/:attachment/:class/:id/:style_:basename.:extension”, :styles => {:principal => “240×240>”, :original => “400×400>”, …} end 这是控制器的操作,它会引发错误: def update @pack = Pack.find(params[:id]) @pack.pack_products unless params[:pack][:pack_images_attributes].nil? params[:pack][:pack_images_attributes].count.times do |i| unless params[:pack][:pack_images_attributes][:”#{i.to_s}”][:photo].blank? file = params[:pack][:pack_images_attributes][:”#{i.to_s}”][:photo] dimensions = Paperclip::Geometry.from_file(file) @pack.pack_images[i].width = […]

Rails 4,Paperclip和多态关联

我有2个模型:News和Uploadedfile class News < ActiveRecord::Base has_many :uploadedfiles, as: :parent attr_accessible :title, :content, :author end class Uploadedfile < ActiveRecord::Base belongs_to :parent, polymorphic: true has_attached_file :url attr_accessible :url_file_name, :url_content_type, :url_file_size, :url_updated_at end forms: 当我提交表单时,我的表uploadedfile不会更改 问题出在哪儿? 谢谢!

Rails 4:Paperclip和rails_admin“未定义的方法`attachment_definitions’错误”

我正在使用rails_admin和paperclip但是使用具有paperclip属性的模型安装rails_admin has_attached_file会引发错误 undefined method `attachment_definitions’ 我在主git分支和受保护的属性gem中使用Rails 4和rails_admin。

纸夹文件上传

我有一个场景,在同一个表单中,我有两个上传,一个是图像类型,而另一个是doc,excel和PDF等。我正在使用gem’paper-clip’。 首先我想知道如何自定义和配置回形针以上传两种类型,其次我想限制两个字段不上传其他类型。 像图像字段不应该接受其他内容类型,反之亦然。

rails 3 paperclip imagemagick问题

我一直试图让回形针工作几天而没有运气! 据我所知,下面这个错误与imagemagick有关。 我试图用macports和手动卸载并安装imagemagick。 另外,设置Paperclip.options [:command_path] =“/ usr / local / bin”。 它开始让我疯了! 照片/var/folders/A7/A7X8PAnOFsCTHkFpeODoO+++++++++++++ 我正在跑雪豹。 当我运行rails服务器时会出现这个问题。“/ Users / michaelorcutt / shudder / wise / plugins / paperclip / lib / paperclip.rb:50:警告:已经初始化了常量VERSION”

使用回形针进行内容类型validation失败

我正在尝试使用paperclip上传应该具有mime类型audio/x-mod .xm文件。 我通过设置以下选项配置回形针以允许此配置: Paperclip.options[:content_type_mappings] = { xm: “audio/x-mod” } 附件字段的validation如下所示: validates_attachment :song, presence: true, content_type: { content_type: [“audio/x-mod”] }, size: { in: 0..128.kilobytes } 每当我尝试上传具有mime类型audio/x-mod回形针的.xm文件时,我都会收到错误Song content type is invalid 。 当我将有效内容类型指定为[/.+/]时,它可以正常工作。 我错过了什么吗? 这可能是回形针如何检查内容类型的错误吗? 有没有办法看到回形针认为文件的内容类型是什么? Started POST “/mods” for 127.0.0.1 at 2014-08-02 11:28:56 +0200 Processing by ModsController#create as HTML Parameters: {“utf8″=>”✓”, “authenticity_token”=>”FhBvyd8jOapcjONk8kyOgGE/oOZPA+sDBJxr/w3zUG0=”, “mod”=>{“title”=>”Girl Next Door”, “release(1i)”=>”2014”, […]

带回形针的夹具

我正在使用Paperclip存储文档,但我找不到如何创建它们的装置,我写道: File.open(Rails.root.join(‘spec’, ‘assets’, ‘image.png’))) %> : asset_file_name: asset_content_type: asset_file_size: asset_updated_at: documentable: party (Event) %> 但是我运行它,文档存在于数据库中,但它没有存储。 我应该自己存储文件(写文件)吗? 或者还有其他方式吗?

Rails将Paperclip目录结构转换为Carrierwave

我使用的是Paperclip gem: https : //github.com/thoughtbot/paperclip 我现在正在使用Carrierwave: https : //github.com/carrierwaveuploader/carrierwave 我的制作网站目前正在使用Paperclip。 我将更新生产网站以使用Carrierwave。 Paperclip上传的文件夹结构与Carrierwave不同。 我也使用Amazon S3来存储上传。 我想知道是否有办法将使用Paperclip上传的生产文件转换为Carrierwave。 例如,在制作中使用Paperclip时,我现在有类似以下内容的简历: BUCKET_NAME / MODEL_NAME /恢复/ 000/000 / MODEL_ID /原厂/检验.pdf 使用Carrierwave它应该是: BUCKET_NAME /上传/模型名称/恢复/ MODEL_ID /原厂/检验.pdf 现在看来我必须手动进行这种转换。 我想知道是否有更好的方法。 请指教。

如何通过Paperclip保存canvas

我一直在使用两种方法,但目标只是通过Paperclip保存canvas。 第一种方法 Canvas到Base64,然后使用ajax将base64添加到params $(document).on(‘click’, ‘#save_canvas’, function() { var base64Data = canvas.toDataURL() $.ajax({ type: “POST”, url: “pictures/”, data: { base64: base64Data }, success: function(post){ console.log(‘success’) }, error: function(post){ console.log(this) } }) }) 通过Paperclip.adapters_io访问params [:base64] def create @picture = Picture.new(picture_params) # … image = Paperclip.io_adapters.for(params[:base64]) image.original_filename = “canvas.png” @picture.image = image @picture.save redirect_to @picture end 我认为这不起作用,因为这只包括base64中的base64并且缺少所有其他所需的参数。 第二种方法 […]