12

何時間もグーグル/スタックオーバーフローしましたが、この問題の解決策が見つかりませんでした. PaperClip のインストールがうまくいかなかったのではないかと思っています。モデル フォルダーにある画像の添付ファイルを検証しようとしています。

validates :image, presence: true,
content_type: { content_type: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif']},
size: { less_than: 5.megabytes }

また、github の read me ファイルに似たコードも試しました。

validates_attachment :image, :presence => true,
:content_type => { :content_type => 'image/jpeg', 'image/jpg', 'image/png', 'image/gif' },
:size => { less_than: => 5.megabytes }

そして、私は個々の検証を使用しようとしました

validates_attachment_presence :image
validates_attachment_content_type :image,:content_type => ['image/jpeg', 'image/jpg', 'image/png', 'image/gif']
validates_attachment_size :image,:less_than => 5.megabytes

すべての場合にエラーが発生します。また:

Routing Error
undefined method `before_image_post_process' for #<Class:0x00000101461750>
Try running rake routes for more information on available routes.

または:

NoMethodError in PinsController#index
undefined method `key?' for nil:NilClass
4

3 に答える 3

34

あなたhas_attached_file :imageのファイルにはありますか?もしそうなら、それが前であることを確認してvalidates_attachmentください。

于 2013-07-31T16:46:08.787 に答える