सिनात्रा
उत्तर
मुझे this thread पर मिले उदाहरण कोड के साथ शुभकामनाएं मिली हैं।
इसे यहाँ सहित मामले में कड़ी कभी गायब हो जाता है:
post '/upload' do
unless params[:file] &&
(tmpfile = params[:file][:tempfile]) &&
(name = params[:file][:filename])
@error = "No file selected"
return haml(:upload)
end
STDERR.puts "Uploading file, original name #{name.inspect}"
while blk = tmpfile.read(65536)
# here you would write it to its final location
STDERR.puts blk.inspect
end
"Upload complete"
end
तो आपके विचार इस प्रकार दिखाई देगा। यह Haml का उपयोग करता है, लेकिन महत्वपूर्ण हिस्सा अपने प्रपत्र तत्व में enctype स्थापित करने के लिए भूल जाते हैं नहीं है, अन्यथा आप सिर्फ एक वस्तु के बजाय फ़ाइल नाम मिल जाएगा:
%form{:action=>"/upload",:method=>"post" ,:enctype=>"multipart/form-data"}
%input{:type=>"file",:name=>"file"}
%input{:type=>"submit",:value=>"Upload"}
include FileUtils::Verbose
get '/upload' do
erb :upload
end
post '/upload' do
tempfile = params[:file][:tempfile]
filename = params[:file][:filename]
cp(tempfile.path, "public/uploads/#{filename}")
'Yeaaup'
end
__END__
@@upload
<form action='/upload' enctype="multipart/form-data" method='POST'>
<input name="file" type="file" />
<input type="submit" value="Upload" />
</form>
मैंने पाया, थोड़ा बदल गया है और इस्तेमाल किया यह:
if params[:file]
filename = params[:file][:filename]
tempfile = params[:file][:tempfile]
target = "public/files/#{filename)
File.open(target, 'wb') {|f| f.write tempfile.read }
end
मूल https://github.com/tbuehlmann/sinatra-fileupload पर है लेकिन मेरे पर्यावरण पर कुछ कॉन्फ़िगरेशन समस्याएं हैं। अपलोड फॉर्म पर enctype="multipart/form-data"
और method='POST'
का उपयोग करना न भूलें।
मेरी स्थिति में, मुझे लगता है कि पहली हैश कुंजी एक स्ट्रिंग है - प्रतीक नहीं - उदाहरण के लिए। 'पैरामीटर [ 'फ़ाइल']' –
- 1. सिनात्रा
- 2. सिनात्रा
- 3. सिनात्रा
- 4. सिनात्रा
- 5. सिनात्रा
- 6. सिनात्रा
- 7. सिनात्रा
- 8. सिनात्रा
- 9. सिनात्रा
- 10. सिनात्रा स्थितियां
- 11. अभी सिनात्रा
- 12. रूबी सिनात्रा
- 13. सिनात्रा ऐप
- 14. सिनात्रा आवेदन
- 15. मैं सिनात्रा
- 16. सिनात्रा मार्ग
- 17. सिनात्रा यूआरएल '/' व्याख्याएं
- 18. सिनात्रा के साथ देवता
- 19. सिनात्रा बनाम रेल
- 20. सिनात्रा उप-निर्देशिका दृश्य
- 21. क्रिया नास्तिक मिलान सिनात्रा
- 22. एक सिनात्रा ऐप
- 23. नए सिनात्रा ऐप
- 24. सिनात्रा विकल्प HTTP वर्ब
- 25. रैक :: टेस्ट और सिनात्रा
- 26. सिनात्रा और http डाल
- 27. सिनात्रा चर का दायरा
- 28. सिनात्रा ऐप जो पैरामीटर
- 29. सिनात्रा सर्वर पुश?
- 30. कौन सी लाइब्रेरी सिनात्रा
मुझे लगता है कि आप इसके साथ पेपरक्लिप का उपयोग करने की कोशिश कर रहे हैं। क्या आप अपना कोड दोबारा पेस्ट कर सकते हैं (लिंक एक मृत पृष्ठ की ओर जाता है)? अन्यथा, आपका समाधान क्या था? – slant