【发布时间】:2012-04-04 16:55:55
【问题描述】:
在我的 Rails 3.2.2 项目中,我有以下内容:
class Photo < ActiveRecord::Base
belongs_to :album
default_scope order: :title
extend FriendlyId
friendly_id :title, :use => :slugged
validates :title, :presence => true
validates :title, :uniqueness => {:scope => :album_id}
validates :file, :attachment_presence => true
has_attached_file :file, :path => (Rails.root + "photos/:id/:style/:filename").to_s,
:url => "/photos/:style/:id",
:styles => { :small => "450x450>"}
end
class PhotoTest < ActiveSupport::TestCase
should belong_to(:album)
should validate_presence_of(:title)
should have_attached_file(:file)
should validate_attachment_presence(:file)
end
'should validate_attachment_presence(:file)' 测试总是失败,但我不知道为什么。我还有其他带有所需附件的单元测试,测试结果很好。
有什么想法吗?
【问题讨论】:
-
您是否针对您的设置运行回形针内部测试?为了确保它不是来自回形针的东西?
-
不确定你的意思。我正在尝试使用回形针匹配器,如rdoc.info/github/thoughtbot/paperclip/Paperclip/Shoulda/… 所述
-
首先,您应该在终端中打开回形针gem:
cd to/where/paperclip/is/located,然后运行bundle install来安装依赖项。然后运行rake或rake test(不记得是哪个)来针对您的系统测试回形针,看看您的系统上的回形针设置是否有问题。 -
我在 Rails 3.2.3、Paperclip 3.0.2 和 Ruby 1.9.3-p125 上遇到了完全相同的问题。
should validate_attachment_presence(:file)总是失败。正如@Ekampp 所建议的那样,我运行了回形针测试,但它们完成时没有任何错误。 -
嗯.. 我不知道这个问题。我的回形针在 3.2.1 应用程序上运行良好,也许从 3.2.1 到 3.2.2 有什么变化?
标签: ruby-on-rails ruby-on-rails-3 paperclip paperclip-validation