2013-07-09 9 views
53
$resource("/entries/:id", {id: "@id"}, {update: {method: "PUT"}}) 

@id क्या है?

$ संसाधन doc page पर कोई यह नीचे बताता है, लेकिन मुझे अभी भी समझ में नहीं आता है।

पैरामीटर मान तो उस पैरामीटर का मान के साथ @ पहले से जुड़ा हुआ है, तो डेटा वस्तु से निकाला जाता है (के लिए उपयोगी गैर प्राप्त संचालन)। "डेटा यहां आपत्ति अगर गैर postData वस्तु को संदर्भित करता है जाओ "वर्ग" कार्रवाई प्रयोग किया जाता है, या उदाहरण ही अगर गैर प्राप्त उदाहरण कार्रवाई प्रयोग किया जाता है।

उत्तर

64

यदि मैं यह सही ढंग से समझ, और मैं नहीं हो सकता, पैरामीटर {id: @id} का एक और तरीका का एक उदाहरण है डेटा के एक टुकड़े के साथ अपने यूआरएल चर की आपूर्ति करें।

var myResource = $resource("/posts/:theName", 
          {theName: '@petName'}, 
          {enter : { 
             method: "POST", 
             isArray: false 
            } 
          }); 

अगर मैं एक विशेषता "petName" डेटा है कि मैं पोस्टिंग कर रहा हूँ में है, कि विशेषता के मान मेरा url में :theName चर में रखा जाएगा:

इस विधि को देखते हुए। कल्पना करें कि पोस्ट डेटा {"petType": "cat", "petName": "Spot"} है, यूआरएल "/posts/Spot" पढ़ेगा। मेरे दिमाग में, @ का अर्थ ऑब्जेक्ट के "विशेषता" को पोस्ट किया जाना है।

{theName: 'petName'} //no "@" 
// url output ----> '/posts/petName' 

:

दूर है कि मूल्य से @ ले लो, और यूआरएल चर सीधे उस संसाधन पैरामीटर में मूल्य दर्शाएंगे।

//url var--> //$resource param {..} --->//Object to be posted 
:theName---> {theName ----> @petName ---> {petName---> "Spot" 

यह केवल यूआरएल में "स्पॉट" प्राप्त करने के लिए 5 कदम उठाए:

यहाँ संदर्भ की श्रृंखला है!

। ऊपर के उदाहरण का उपयोग करते हुए एक संसाधन उदाहरण के

उदाहरण:

var postData = new myResource(); 
    postData.petType = "cat"; 
    postData.petName = "Spot"; 
    postData.$enter({}, function(data){ 
     $scope.data = data; 
    }) 
    // url to post to will be '/posts/Spot', postData object will be 
    // {"petType":"cat", "petName:"Spot"} 

एक तरफ ध्यान दें पर, डॉक्स बहुत भ्रामक हो सकते हैं। क्या आपने कभी एक कठिन कोर्स लिया है और प्रोफेसर एक शानदार व्यक्ति था जिसने आपकी भाषा को मुश्किल से बोला था? हाँ। पिछले भाग के लिए

+3

+1: डी। भी, $ स्कोप हैंडल बहुत अच्छी तरह से वादा करता है – Ven

+0

धन्यवाद, मुझे लगता है कि मुझे यह मिल रहा है ... ऐसा लगता है कि यह "वर्ग" बनाने के लिए और अधिक समझ में आता है और संसाधन से प्राप्त होता है ... इसकी लगभग एक सदस्य चर है, लेकिन शायद यह भी अस्पष्ट है – James

+7

पूरी बात अस्पष्ट है। लगभग 4 अलग-अलग स्थान हैं जहां आप यूआरएल पैरामीटर जोड़ सकते हैं। जब मैं एक संसाधन लिखता हूं तो मैं इसे जितना संभव हो उतना सरल और छोटा बना देता हूं। कुछ भी बड़ा और मैं $ http का उपयोग करता हूं। लेकिन यह सिर्फ मुझे है ... – rGil

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

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