मुझे लगता है कि फ़ाइल अपलोड/डाउनलोड करने की आवश्यकता है एक रूबी ऑन रेल्स अनुप्रयोग विकसित कर रहा हूँ प्राप्त करने के लिए। अपलोड भाग के लिए मैंने मणि वाहक का उपयोग किया क्योंकि यह उपयोग और लचीला उपयोग करना बहुत आसान है। समस्या है: एक बार मैं फ़ाइल अपलोड की गई, मैं कुछ चीजें जानने की जरूरत: अर्थात, अगर यह फ़ाइल मैं इसे इनलाइन दिखाने को डाउनलोड करने की एक PDF है बजाय, और एक ही एक छवि के लिए चला जाता है। मैं कैसे फाइल एक्सटेंशन मिलता है और कैसे मैं इसे लिए कर सकते हैं एक उपयोगकर्ता के लिए फ़ाइल भेजने ?? किसी भी प्रतिक्रिया की सराहना की है धन्यवाद !!Carrierwave कैसे फाइल एक्सटेंशन
उत्तर
फाइल एक्सटेंशन का निर्धारण (मुझे लगता है घुड़सवार अपलोड करने वाले के लिए एक नाम 'फ़ाइल' है):
file = my_model.file.url
extension = my_model.file.file.extension.downcase
तो माइम और स्वभाव तैयार वार्स:
disposition = 'attachment'
mime = MIME::Types.type_for(file).first.content_type
if %w{jpg png jpg gif bmp}.include?(extension) or extension == "pdf"
disposition = 'inline'
end
(अगर आप चाहते हैं अन्य एक्सटेंशन जोड़) ।
और फिर फ़ाइल को भेजने:
send_file file, :type => mime, :disposition => disposition
आप किसी फ़ाइल को अपलोड करने के बाद, नाम डेटाबेस में संग्रहित है। इसमें एक्सटेंशन भी शामिल है।
user.asset.file.extension
यह उपयोगकर्ता के लिए भेजने के लिए, यदि आप user.asset_url
कहते हैं, यह आप URL दे देंगे जहां फ़ाइल है: मान लें कि आप एक अपलोडर asset
के रूप में माउंट के साथ एक User
मॉडल है, तो आप इसे के रूप में प्राप्त कर सकते हैं अपलोड की गई। उपयोगकर्ता फ़ाइल प्राप्त करने के लिए उस लिंक का उपयोग कर सकते हैं। या क्या मैं गलत हूं कि "उपयोगकर्ता को फ़ाइल भेजना" से आपका क्या मतलब है?
जवाब देने के लिए धन्यवाद !! अच्छा, मैं उपयोगकर्ता को फ़ाइल डाउनलोड करना चाहता हूं। आप जानते हैं, डोनलोड लोड करें (इसके साथ खोलें या इसे रखें या क्रोम केस में रखें या अस्वीकार करें।) मैंने सोचा कि पैरामीटर के साथ एक साधारण send_file के साथ ठीक रहेगा। – Wiggin
ठीक है, बस फ़ाइल से लिंक करें। आप 'user.asset_url' के साथ यूआरएल प्राप्त कर सकते हैं। –
हाँ, मैंने यह किया! आपकी सलाह पूरी तरह से काम किया, बहुत बहुत धन्यवाद !! – Wiggin
- 1. carrierwave
- 2. फाइल एक्सटेंशन (basename?) जाओ
- 3. Carrierwave जांच करता है, तो रिमोट फाइल कोहरे
- 4. बैच खोजने फाइल एक्सटेंशन
- 5. Node.js फाइल एक्सटेंशन
- 6. हो रही फाइल एक्सटेंशन
- 7. इस फाइल एक्सटेंशन
- 8. sqlite3 डेटाबेस फाइल एक्सटेंशन
- 9. CDN (CloudFront) कैश Carrierwave
- 10. प्रारंभिक फाइल एक्सटेंशन सेट जबकि फ़ाइल
- 11. शेयर छवि है, लेकिन कोई फाइल एक्सटेंशन
- 12. एक से अधिक संभव फाइल एक्सटेंशन
- 13. NSURL फाइल एक्सटेंशन के अलावा आदि
- 14. एचटीएमएल 5 appcache प्रकट फाइल एक्सटेंशन
- 15. "फाइल एक्सटेंशन" के साथ एएसपी.नेट एमवीसी रूट्स
- 16. रेल: carrierwave अप्रारंभीकृत निरंतर त्रुटि
- 17. Carrierwave अपलोड भले ही तस्वीर है
- 18. carrierwave + mini_magick जवाहरात = नहीं एक छवि त्रुटि
- 19. वसंत एमवीसी; यूआरएल में फाइल एक्सटेंशन से परहेज?
- 20. ब्राउज़र एक्सटेंशन में स्थानीय फाइल सिस्टम का उपयोग
- 21. .htaccess फाइल
- 22. अपलोडिंग त्रुटि carrierwave का उपयोग करने और uploadify
- 23. OpenFileDialog से फ़ाइल एक्सटेंशन कैसे प्राप्त करें?
- 24. PHP एक्सटेंशन कैसे बनाएं
- 25. कैसे DIRED विशिष्ट एक्सटेंशन
- 26. PHP में फ़ाइल एक्सटेंशन कैसे प्राप्त करें?
- 27. पेपरक्लिप: एक्सटेंशन
- 28. फाइल हैंडल कैश कैसे करें?
- 29. एक्सटेंशन
- 30. फाइल सिस्टम
आपको बहुत बहुत धन्यवाद, मैं अपने समाधान की शैली पसंद है, और यह पूरी तरह से काम किया। फिर, उत्तर के लिए धन्यवाद !! – Wiggin
जहां वास्तव में रेल परियोजना फाइलों में आप स्वभाव और MIME प्रकार वार्स जगह? – maumercado