Tôi đã googled/stack tràn cho giờ và không tìm thấy một giải pháp cho vấn đề này. Tôi tự hỏi nếu cài đặt PaperClip của tôi bằng cách nào đó không thành công. Tôi đang cố gắng để xác nhận một tập tin đính kèm hình ảnh trong thư mục mô hình của tôi:Ruby on Rails PaperClip Gem validate_attachement lỗi
validates :image, presence: true,
content_type: { content_type: ['image/jpeg', 'image/jpg', 'image/png', 'image/gif']},
size: { less_than: 5.megabytes }
Tôi cũng đã thử mã tương tự nhiều đến đọc cho tôi tập tin trên github:
validates_attachment :image, :presence => true,
:content_type => { :content_type => 'image/jpeg', 'image/jpg', 'image/png', 'image/gif' },
:size => { less_than: => 5.megabytes }
Và tôi đã cố gắng sử dụng xác thực riêng lẻ
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
Tôi gặp lỗi trong mọi trường hợp. Hoặc:
Routing Error
undefined method `before_image_post_process' for #<Class:0x00000101461750>
Try running rake routes for more information on available routes.
Hoặc:
NoMethodError in PinsController#index
undefined method `key?' for nil:NilClass
Bạn đúng @savmac, thứ tự quan trọng. Tôi có cùng một vấn đề, nhưng tôi nhớ tôi đã đọc ở đâu đó, các hiệp hội phải luôn luôn trước khi xác nhận. – egyamado
Kẹp giấy có thể ném lỗi tốt hơn trong trường hợp không tìm thấy tệp đính kèm được chuyển đến 'validates_attachment'! – dolzenko