2010-10-24 12 views
13

का उपयोग करना संभव है, मैं @jobs के लिए निम्न फ़ॉर्म टैग का उपयोग कर रहा हूं जिसमें job_photos शामिल है।क्या यह रेल्स 3 में मल्टीपार्ट फॉर्म => सत्य है और रिमोट => सत्य

<% form_for @jobs, :html => { :multipart => true }, :remote => true do |f| %> 

प्रपत्र ठीक गैर दूरदराज के काम करता है, लेकिन अगर मैं जोड़ने के दूरदराज के => true, फ़ॉर्म सबमिट create.js रिटर्न लेकिन डीबी या त्रुटि के लिए कुछ भी नहीं बचा है?

उत्तर

15

बात यह है कि आप AJAX के माध्यम से एक मल्टीपार्ट फॉर्म पोस्ट नहीं कर सकते हैं। यह रेल की सीमा नहीं है। इसे रोकने के लिए, आपको एक आईफ्रेम तकनीक का उपयोग करने की आवश्यकता है (जो responds_to_parent प्लगइन के साथ आसान हो सकता है) या फ्लैश या सिल्वरलाइट जैसी तकनीक का उपयोग करें।

+8

कारण AJAX और फ़ाइल-अपलोडिंग कविता नहीं है कि जावास्क्रिप्ट को आपके फाइल सिस्टम तक पहुंच नहीं है, और इसलिए फ़ाइल से अनुरोध नहीं बना सकता है। मल्टीपार्ट फॉर्म में, ब्राउजर के पास आपके फाइल सिस्टम तक पहुंच है और इसलिए फाइल युक्त POST अनुरोध करने में सक्षम है। – Grav

+1

वह बेकार है। मैं ऐसा करना चाहता था। मुझे लगता है कि मैंने यह महसूस करने के लिए पिछले 3 घंटों को बर्बाद कर दिया था कि यह काम नहीं करेगा: पी – nzifnab

+0

मुसाफा के जवाब में रीमोटिपर्ट मणि की जांच करें। एक आकर्षण की तरह काम करता है, और एक दो लाइन अतिरिक्त है। – theIntuitionist

8

remote =>true के साथ फ़ाइल अपलोड के लिए आप Remotipart मणि का उपयोग कर सकते हैं।

+1

यह मणि चट्टानों! – okliv

संबंधित मुद्दे