Spero che qualcuno possa aiutarmi a capirlo. Ho una stringa base64 di un'immagine:Converte l'immagine base64 in StringIO per Carrierwave
"data:image/jpeg;base64,/9j/4AAQSkZJRgABA..."
vorrei inviarlo utilizzando createRecord di brace e commit():
this.get('store').createRecord(Emb.Painting, {name: newName, image: newImage});
Poi voglio convertirlo in StringIO per carrierwave e salvarlo :
StringIO.class_eval { def original_filename; "stringiohaxx.jpg"; end }
io = StringIO.new(Base64.decode64(params[:painting][:image]))
@painting = Painting.create(:name => params[:painting][:name], :image => io)
L'immagine viene salvata. L'immagine è sempre danneggiata. Ho bisogno di rompere la mia pausa la mia stringa Base64 in:
data: '/9j/..'
type: 'image/jpeg'
? Qualsiasi aiuto apprezzato.
Infatti, proprio come la documentazione afferma qui: http://ruby-doc.org/stdlib-2.0/libdoc/base64/rdoc/Base64.html – Goodwine