2011-03-07 18 views
5

के साथ AJAX अनुरोध मेरे पास कोर्सरक्वेट नामक एक नियंत्रक है जो "नई" विधि के लिए AJAX अनुरोध स्वीकार करेगा।न्यू टू रेल 3, जेसन प्रतिक्रिया

  1. यह json के साथ जवाब दिया जाएगा के बाद से, मैं /course_requests/new.json इस्तेमाल करना चाहिए?

  2. मैं ऐसी मूर्खतापूर्ण जेसन प्रतिक्रिया के लिए टेम्पलेट नहीं बनाना चाहता, मैं यह कैसे करूँगा?

  3. क्या प्रतिक्रिया है? (मैं इसे ब्लॉक शैली को देखा है और मैं समझता हूँ कि, लेकिन क्या गैर ब्लॉक शैली के बारे में)

उत्तर

10
  1. हां, आपके जे एस की तर्ज पर कुछ कर रही किया जाएगा:

    $.getJSON("/course_requests/new.json",...); 
    
  2. आपको ऐसा करने की ज़रूरत नहीं है, आपको बस JSON के साथ ब्लॉक करने के लिए उत्तर देने की आवश्यकता है।

    respond_to do |format| 
        format.json { render :json => "test" } 
    end 
    
  3. Blockless वाक्य रचना, मुझे लगता है कि आप इस मतलब है: http://davidwparker.com/2010/03/09/api-in-rails-respond-to-and-respond-with/। असल में, आप निर्दिष्ट करते हैं कि आपके नियंत्रक किस प्रकार के माइम प्रकार का जवाब देता है और फिर आप कूलर responds_with विधि का उपयोग कर सकते हैं।

+2

आपको RoR3 में 'answer_to' ब्लॉक की आवश्यकता नहीं है। नियंत्रक में 'answer_to: html,: json' रखना और विधि के भीतर 'respond_with ([your results]) को कॉल करना पर्याप्त है। http://api.rubyonrails.org/classes/ActionController/MimeResponds/ClassMethods.html#method-i-respond_to – DrColossos

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