मेरे रेल नियंत्रकों में से एक में मैं बेस 64 एन्कोडेड स्ट्रिंग लेने की कोशिश कर रहा हूं, इसे डीकोड करता हूं और इसे एक फ़ाइल (.png) पर लिखता हूं।बेस 64 एन्कोडेड स्ट्रिंग फ़ाइल (रूबी पर रूबी) - अपरिभाषित विधि 'अनपैक' त्रुटि
def create_character
@character = Character.new(params[:character])
@base64 = params[:base64]
File.open("app/assets/images/characters/#{@character.name.gsub(/\s+/, "")}-#{@character.author_name.gsub(/\s+/, "")}.png", 'wb') do |f|
f.write(Base64.decode64(@base64))
end
if @character.save
flash[:notice] = "Character created."
redirect_to(:action => 'share')
else
मैं निम्न त्रुटि हो रही है:
undefined method `unpack' for #<ActiveSupport::HashWithIndifferentAccess:0x1044b22d8>
गलत यहाँ क्या हो रहा है यहाँ मेरी कोड है?
संपादित करें: एक वास्तव में अजीब बात यह है कि फ़ाइल लिखने के लिए कोड रेल कंसोल में पूरी तरह से ठीक काम करता है लेकिन एप्लिकेशन चलाने पर नहीं।
जब आप 'base64' चर लॉग या प्रिंट करते हैं तो आपको क्या आउटपुट मिलता है? – sarnold