您知道是否有方法可以知道图片是否已上传?
我的意思是,我有一个Foo_Class,这个类可以有一个附加图像,但它的存在是不必要的。有没有办法知道该类的特定实例是否有图像?
谢谢!
答案 0 :(得分:11)
如果foo.image?
返回true,则上传文件。
答案 1 :(得分:8)
当您将Paperclip添加到模型时,您添加了回形针特定行,我的
cover_file_name
cover_content_type
cover_file_size
cover_updated_at
然后我检查它是否为零
Foo_Class.cover_file_name.nil?
答案 2 :(得分:6)
我认为正确的解决方案是使用file?
方法。
foo.image.file?
http://rdoc.info/github/thoughtbot/paperclip/Paperclip/Attachment#file%3F-instance_method
使用存在?将向服务器发出请求以检查文件是否存在,这可能非常慢,特别是如果它位于不同的服务器上或S3上。
使用foo.image_file_name.nil?可能与文件相同?在幕后,但你不想依赖回形针的实施,这可能有一天会改变。
答案 3 :(得分:1)
如果这是在我的模型
中has_attached_file :avatar, :styles => {:logo => "230x50>", :card_image => "180x50>"}
您可以检查是否为用户上传了图像,即@user
<%= @user.avatar.exists? %>
这将返回布尔值。
答案 4 :(得分:0)
假设您要检查Foo模型中第一行的附件(图像)是否存在:
image_present = Foo.first.image?
如果附件存在,则返回true。