पर प्रकाशित करें मेरे पास उल्का के साथ समस्या है: मेरे पास एक व्यवस्थापक है, जिसे सभी पंजीकृत उपयोगकर्ताओं को देखने की आवश्यकता है। लेकिन अन्य सभी उपयोगकर्ताओं के पास अन्य उपयोगकर्ताओं को देखने की क्षमता नहीं होनी चाहिए। इसलिए मैं serversideउल्का - सभी उपयोगकर्ताओं को व्यवस्थापक के लिए केवल
Meteor.publish("adminUsers", function(){
var result;
if (Roles.userIsInRole(this.userId, ["admin"]))
{
result = Meteor.users.find();
}
//console.log(result);
return result;
});
ग्राहक पक्ष पर मैं
Meteor.subscribe("adminUsers");
के साथ इस की सदस्यता पर प्रकाशित निम्नलिखित कोड और
AllUsers = new Meteor.Collection("adminUsers");
अब मैं सभी उपयोगकर्ता प्राप्त करना चाहते हो इस कोड के साथ एक टेम्पलेट:
Template.adminUserverwaltung.AllUsers = function(){
console.log(AllUsers.find());
return AllUsers.find();
}
और इस कोड के साथ टेम्पलेट में परिणाम दिखाने:
<template name="adminUserverwaltung">
{{#each AllUsers}}
{{this.username}}
{{/each}}
</template>
लेकिन दुर्भाग्य से यह काम नहीं कर रहा है ... किसी को भी मुझे शायद मदद कर सकते हैं?
यह 'meteor.com: Meteor.user()] (http://docs.meteor.com/#/full/meteor_user) द्वारा निराश प्रतीत होता है जो' Meteor.user() ' 'Meteor.publish()' – Paul
के अंदर 2013 के बाद से यह बदल सकता है। ['publ'] (http://docs.meteor.com/#/full/meteor_publish) दस्तावेज' this.userId' का उपयोग करने का सुझाव देता है। – rzymek
हां, मैंने पाया कि मुझे व्यवस्थापक के लिए '_id'' एकत्र करने की आवश्यकता है और 'this.userId' की तुलना में सर्वर-साइड पर एक वैश्विक सरणी तैयार करने की आवश्यकता है। उपयोगकर्ता रिकॉर्ड की संपत्तियों की जांच करने का प्रयास मेरे अंदर प्रकाशित नहीं हो रहा था। – Paul