3

モデルにある検証コードからエラー メッセージが表示されます。私のシステムでは、ペーパークリップを使用して多くのファイルをヘルプ記事に添付しています。ファイルを検証せずにアップロードできるため、ペーパークリップがインストールされていることはわかっています。

これが私のモデルです:

class HelpAttachment < ActiveRecord::Base

  belongs_to :help

  has_attached_file :attachment, 
                    :styles => { :medium => "300x300>",
                                 :thumb => "100x100>" }

  validates_attachment :attachment, :content_type => [ 'image/png', 'image/jpg', 'image/gif', "application/pdf", 
                                    'video/mpeg', 'video/quicktime', 'video/x-ms-asf', 'video/x-msvideo', 
                                    'video/x-flv' ]


end

これは、新しい添付ファイルを送信しようとしたときに表示されるエラー メッセージです。

NoMethodError in HelpsController#create

undefined method `validates_attachment' for #<Class:0x00000005581498>

validates_attachment 行を削除すると、すべてが機能しますが、ファイルの検証は行われません。

gemfile に gem 'paperclip' があり、開発モードで実行しています。

何か案は?

4

1 に答える 1

4

paperclip のgithub によると、「新しいスタイル」のバリデーターは次のようになります。これは、ペーパークリップ 3.0 以降に適用されます。

validates :attachment, :attachment_content_type => { :content_type => ['image/png', 'image/jpg']}
于 2012-05-09T22:18:06.180 に答える