के साथ बेस 64 छवि का उपयोग करें, मैं base64 photo and paperclip -Rails से समान काम करना चाहता हूं, लेकिन कैरियरवेव के साथ। क्या कोई मुझे कैरियरवेव में बेस 64 छवियों का उपयोग करके समझा सकता है?कैरियरवेव
5
A
उत्तर
6
class ImageUploader < CarrierWave::Uploader::Base
class FilelessIO < StringIO
attr_accessor :original_filename
attr_accessor :content_type
end
before :cache, :convert_base64
def convert_base64(file)
if file.respond_to?(:original_filename) &&
file.original_filename.match(/^base64:/)
fname = file.original_filename.gsub(/^base64:/, '')
ctype = file.content_type
decoded = Base64.decode64(file.read)
file.file.tempfile.close!
decoded = FilelessIO.new(decoded)
decoded.original_filename = fname
decoded.content_type = ctype
file.__send__ :file=, decoded
end
file
end
1
स्वीकृत उत्तर मेरे लिए काम नहीं किया (v0.9)। ऐसा लगता है कि कैश कॉलबैक से पहले विफल रहता है।
इस कार्यान्वयन काम करता है:
class ImageUploader < CarrierWave::Uploader::Base
# Mimick an UploadedFile.
class FilelessIO < StringIO
attr_accessor :original_filename
attr_accessor :content_type
end
# Param must be a hash with to 'base64_contents' and 'filename'.
def cache!(file)
if file.respond_to?(:has_key?) && file.has_key?(:base64_contents) && file.has_key?(:filename)
local_file = FilelessIO.new(Base64.decode64(file[:base64_contents]))
local_file.original_filename = file[:filename]
extension = File.extname(file[:filename])[1..-1]
local_file.content_type = Mime::Type.lookup_by_extension(extension).to_s
super(local_file)
else
super(file)
end
end
end
संबंधित मुद्दे
- 1. कैरियरवेव
- 2. कैरियरवेव
- 3. कैरियरवेव
- 4. कैरियरवेव
- 5. कैरियरवेव
- 6. कैरियरवेव
- 7. कैरियरवेव
- 8. कैरियरवेव
- 9. कैरियरवेव मणि
- 10. धुंध/कैरियरवेव
- 11. फॉग और कैरियरवेव
- 12. कैरियरवेव और मोंगोइड
- 13. कैरियरवेव - एक स्ट्रिंग
- 14. पैपरट्राइल और कैरियरवेव
- 15. कैरियरवेव दिए गए यूआरएल
- 16. कैरियरवेव छवि आयाम
- 17. कैरियरवेव के साथ समस्या:
- 18. rspec परीक्षण कैरियरवेव - नौसिखिया
- 19. कैरियरवेव :: RMagick resize_to_fit
- 20. कैरियरवेव बहु फ़ाइल (फोटो) अपलोड
- 21. एंड्रॉइड/जावा से आरओआर कैरियरवेव
- 22. कैरियरवेव सामग्री_ प्रकार हमेशा शून्य
- 23. रेडैक्टर रेल और कैरियरवेव - चित्र आकार
- 24. कैरियरवेव - छवियों को संसाधित करते समय त्रुटि
- 25. मॉडल के बिना कैरियरवेव अस्थायी फ़ाइल
- 26. कैरियरवेव अस्थायी निर्देशिका अपलोड/tmp फ़ोल्डर
- 27. मौजूदा कैरियरवेव फ़ाइलों का नाम बदलना
- 28. कैरियरवेव; एकाधिक अपलोडर या सिर्फ एक?
- 29. कैरियरवेव अपलोडर में छवि आकार मान्य करें
- 30. कैरियरवेव और एक विशिष्ट चौड़ाई का आकार बदलें
मैं कैसे नियंत्रक के माध्यम से फ़ाइल को बचाने के लिए? क्या आपके पास इसके लिए नमूना भी है? – fabian