2012-05-07 7 views
8

मैं ग्राहक पक्ष पर एक उल्का संग्रह मिल गया हैउल्का त्रुटि में एक स्थानीय कनेक्शन परिणामों का उपयोग: डालने में विफल रहा है: 404 - विधि नहीं मिला

Friends = new Meteor.Collection("Friends"); 
Meteor.subscribe("Friends"); 

मैं एक उपयोगकर्ता फेसबुक के साथ प्रमाणित है और मैं चाहता हूँ अपने दोस्तों की एक सूची हड़पने:

Template.Friends.all_friends = function(){ 
    return Friends.find(); 
} 

मैं एक है:

FB.api("/me/friends? auth_token="+response.authResponse.accessToken, 
    function(response){ 
     for (i = 0; i<response.data.length;i++){ 
      Friends.insert(response.data[i]); 
    } 
); 

मुझे लगता है कि सूची प्राप्त करने के एक समारोह है टेम्पलेट कि स्क्रीन पर सभी दोस्तों प्रदर्शित करना चाहते हैं:

<template name="Friends"> 
    {{#each all_friends}} 
    <div id="{{id}}" class="friend"> 
     <img src="http://graph.facebook.com/{{id}}/picture" /> 
     {{name}} 
    </div> 
    {{/each}} 
</template> 

क्या दिखाई देता है पेज पर हो रहा जा सकता है कि सभी दोस्तों एक विभाजन के लिए स्क्रीन पर क्या फ़्लैश दूसरा तो है तुरंत स्क्रीन चमक वापस खाली

JavaScript कंसोल संदेश एक बार दोस्त मेरे पास प्रति प्रकट होती है

insert failed: 404 -- Method not found 

तो (हाँ, यह एक से अधिक शून्य, पूछने के लिए धन्यवाद है)! मुझे क्या याद आया? किसी को?

उत्तर

27

आपको क्लाइंट और सर्वर दोनों पर संग्रह घोषणा की आवश्यकता है।

// common code, do not put under /client or inside Meteor.is_client test 
Friends = new Meteor.Collection("Friends"); 
4

आप केवल ग्राहक पक्ष पर संग्रह उपयोग करना चाहते हैं और आप के लिए अशक्त पास करके सर्वर से डेटा को सहेजना आप ("ग्राहक" फ़ोल्डर में या .isClient में) समारोह अपने संग्रह घोषणा कर सकते हैं की जरूरत नहीं है इस तरह के निर्माता:

if(Meteor.isClient()){ 
// Some other code 
... 

onlyClientCollection = new Meteor.Collection(null); 

// Some other code 
... 
} 
+0

यह बात मुझे परेशान कर रही थी। जवाब के लिए धन्यवाद – Pawan

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