이 시도 할 수 있습니다 :
,210
도 참조 : 레일의 유효성 검사기의 accept nested attributes for has_many relationship
사용이 경과하지 않은 경우 저장되지 양식을 방해합니다. 종이 클립 확실
# attachment.rb
validates :check_size
validates :check_if_pdf
def check_size
errors.add :path, "Size is NOT ok" if self.size < XXX
end
def check_if_pdf
errors.add :path, "File is NOT pdf" unless self.path.to_s.split('.').last == 'pdf'
end
되지 않음 ... Carrierwave도 굉장하고 당신이 그 보석에 열려있는 경우이 시도 할 수 있습니다 :
# attachment.rb
mount_uploader :path, MyUploader
# app/uploaders/my_uploader.rb
class MyUploader < CarrierWave::Uploader::Base
storage :file # For local storage
#storage :fog # If using S3
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
def filename
@name ||= "#{File.basename(original_filename, '.*')}" if original_filename.present?
end
end
Carrierwave 당신이 유효성을 검사 할 수있는 extension_white_list 방법이있다 그것의 PDF 문서
# uploaders/my_uploader.rb
def extension_white_list
%w(pdf jpg jpeg gif png csv)
end
그 후, 어떻게하면 Paperclip과 activeAdmin gem을 사용하여 여러 파일을 업로드 할 수 있습니까? –
좋아, Carrierwave로 변경하려는 경우에 대비하여 몇 줄을 추가했습니다. – James
다시 한번 감사드립니다. Skype에 나를 추가 할 수 있습니까? 나는 Rails 세계에 처음으로 익숙하다. –