标签: paperclip

Rails:MD5 校验和在回形针中如何工作?

我对此真的很困惑:

来自官方回形针维基页面:

如果原始文件具有名为指纹的属性,则分配的原始文件的 MD5 校验和将被放置在模型中。

我的表中有一个attachment_fingerprint,回形针会自动将 md5 值插入该字段。

问题是,校验和是如何生成的?是上传前生成的还是上传后生成的?

例如,原始文件的校验和为 1,文件在上传过程中损坏,校验和现在变为 2,回形针将在该字段中插入哪个值?

ruby-on-rails paperclip

1
推荐指数
1
解决办法
1093
查看次数

ActiveAdmin 中的回形针错误

我正在尝试使用 Paperclip 在 ActiveAdmin Post 编辑页面填写“图像”字段。导轨 4.0.0,回形针 4.2.0。在 Post 模型中,我添加了以下代码:

has_attached_file :image
validates_attachment :image, content_type: { content_type: [ "image/jpg", "image/jpeg", "image/png" ] }
Run Code Online (Sandbox Code Playgroud)

提交表单后,我有以下错误:

回形针 :: Admin 中的错误::PostsController#update

发布模型缺少 'image_file_name' 所需的 attr_accessor

好像忘记做点什么了。在这一步我错过了什么?好的,我已经手动添加了

attr_accessor :image_file_name
Run Code Online (Sandbox Code Playgroud)

提交后我收到另一个错误

Admin::PostsController#update 中的 NoMethodError

#Post:0x007fb148266e10 的未定义方法`image_content_type'

我不知道该怎么办这个。

ruby-on-rails paperclip activeadmin

1
推荐指数
1
解决办法
1494
查看次数

检索回形针图像的尺寸

我正在尝试检索回形针图像的尺寸。我尝试调用方法widthheight应用于我的每个 Imagemodel 实例,但这些返回错误。

然后我试图从这篇文章中获得灵感:https : //github.com/thoughtbot/paperclip/wiki/Extracting-image-dimensions

并在控制台中使用以下内容播放了一下:

image = Imagemodel.first
geometry = Paperclip::Geometry.from_file(image)
Run Code Online (Sandbox Code Playgroud)

虽然我在控制台中收到以下错误

Paperclip::Errors::NotIdentifiedByImageMagickError: 
Run Code Online (Sandbox Code Playgroud)

所以我有点困惑......我很高兴为我的表中的特定字段添加高度和宽度(而是在控制器中的创建操作中而不是在模型级别)或直接访问我的视图或控制器中的维度.. .

ruby-on-rails imagemagick paperclip

1
推荐指数
1
解决办法
1928
查看次数

未初始化常量 Aws::VERSION - Spree

我正在尝试将 Spree 图像上传到 S3。但我很难做到这一点。

我收到此错误:

   raise e
        end
        if Gem::Version.new(Aws::VERSION) >= Gem::Version.new(2) &&
           Gem::Version.new(Aws::VERSION) <= Gem::Version.new("2.0.33")
          raise LoadError, "paperclip does not support aws-sdk versions 2.0.0 - 2.0.33.  Please upgrade aws-sdk to a newer version."
        end
Run Code Online (Sandbox Code Playgroud)

据我了解,aws版本需要高于 2.0.33,但正如你所看到的,这是我的gemfile

#aws
gem 'aws-sdk', '~> 3'
Run Code Online (Sandbox Code Playgroud)

gem我也没有paperclip。需要添加一个吗?

ruby-on-rails paperclip amazon-web-services spree

1
推荐指数
1
解决办法
1760
查看次数

如何上传多个文件 rails API

嗨,我正在使用 ruby​​-2.5.0 和 rails 5 开发 RoR 项目。我正在开发 API,我必须编写一个 api 才能使用回形针上传多个图像。我正在使用邮递员,我可以从邮递员那里选择多张图片,但是当我发送请求时,我只得到了我选择的最后一张图片。如何上传多张图片?请检查屏幕截图。

在此处输入图片说明

提前致谢。

ruby-on-rails paperclip postman

1
推荐指数
1
解决办法
1039
查看次数

Paperclip gem Rails [6.1]:迁移错误参数数量错误(给定 3,预期 2)

我试图在我的 Rails 应用程序上安装回形针 gem,我连续遇到了 3 个问题,我想向他们指出,它可能与最后一个问题有关:

1-我无法安装回形针依赖项“mimemagic”=>我通过将文件freedesktop.org.xml.in及其变量添加FREEDESKTOP_MIME_TYPES_PATH到我的Windows计算机来解决它。

2 - 然后在初始化回形针后,我无法进行迁移=>我通过添加我的rails应用程序的版本来解决它,该版本是[6.1] bessid活动记录,因此它变成了class AddAttachmentImageToPics < ActiveRecord::Migration[6.1].

3-我遇到的最后一个问题是,当我输入时,rails db:migrate我收到以下消息:

ArgumentError: wrong number of arguments (given 3, expected 2)
Run Code Online (Sandbox Code Playgroud)

这是我的迁移文件的内容:

class AddAttachmentImageToPics < ActiveRecord::Migration[6.1]
  def self.up
    change_table :pics do |t|
      t.attachment :image
    end
  end

  def self.down
    remove_attachment :pics, :image
  end
end
Run Code Online (Sandbox Code Playgroud)

cmd 中的消息:

C:\Users\Admin\Desktop\Ruby\instagrameme>rails db:migrate
== 20220205102326 AddAttachmentImageToPics: migrating =========================
-- change_table(:pics)
rails aborted!
StandardError: An error has occurred, this and all later migrations canceled:

wrong …
Run Code Online (Sandbox Code Playgroud)

ruby windows ruby-on-rails version paperclip

1
推荐指数
1
解决办法
2255
查看次数

将纸夹网址添加到json

通常在html中我们将在image标签内使用Model.field.url(:thumb),如何在json上使用它,特别是使用hash_secret.

ruby-on-rails paperclip ruby-on-rails-3

0
推荐指数
1
解决办法
1302
查看次数

回形针 - 仅允许PDF

如何允许使用仅上传某种文件,例如只有PDF,Word或Excel文件?我使用Paperclip gem.

ruby paperclip ruby-on-rails-3

0
推荐指数
1
解决办法
571
查看次数

突然回形针不起作用

照片无法运行identify命令.请安装ImageMagick.

回形针一直在开发中工作正常,但我突然无法上传照片..没有安装imagemagic,但它工作得更早.有人有线索吗?

这是我的控制台错误:

 Setting Load (0.1ms)  SELECT "settings".* FROM "settings" WHERE "settings"."id" = ? LIMIT 1  [["id", "14"]]
   (0.1ms)  begin transaction
Command :: identify -format '%wx%h,%[exif:orientation]' '/tmp/ubuntu_wallpaper_by_hyarmenadan-d54zgpm20130926-11024-9efnnx.jpg[0]'
[paperclip] An error was received while processing: #<Paperclip::Errors::CommandNotFoundError: Could not run the `identify` command. Please install ImageMagick.>
Command :: identify -format '%wx%h,%[exif:orientation]' '/tmp/ubuntu_wallpaper_by_hyarmenadan-d54zgpm20130926-11024-9efnnx.jpg[0]'
[paperclip] An error was received while processing: #<Paperclip::Errors::CommandNotFoundError: Could not run the `identify` command. Please install ImageMagick.>
Command :: identify -format '%wx%h,%[exif:orientation]' '/tmp/ubuntu_wallpaper_by_hyarmenadan-d54zgpm20130926-11024-9efnnx.jpg[0]'
[paperclip] An error was received …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails paperclip ruby-on-rails-4

0
推荐指数
1
解决办法
4543
查看次数

在获取生成的URL时缓存Paperclip资产URL以避免网络请求?

是否有一种可接受的方式让Paperclip每次拨打电话时都不会发出网络请求model.attachment.url()

我想缓存URL以获得更快的加载速度/能够加载我的开发环境,而无需连接wifi等.

ruby-on-rails paperclip fog

0
推荐指数
1
解决办法
366
查看次数