我正在制作一个流星应用程序并使用帐户ui和bootstrap以及所有这些东西,但我想知道是否有一种方式我可以像管理员和删除用户,因为最近人们一直在制作不适当的用户名等。
答案 0 :(得分:2)
你可以很容易地删除用户。让模板仅受admin accounts
保护,并在该模板上有一个包含用户的列表,根据这个列表创建这样的事件。
Template.example.events({
'click #deleteAccount':function(){
meteor.users.remove({_id:this._id})
}
})
并使用这样的allow方法。
Meteor.allow({
remove:function(){
//if is admin return true;
}
})
但这不是一个好习惯,为什么?检查此David Weldon -common-mistakes
如果有办法,我可以像管理员一样?
要以更好的方式完成此操作,请使用meteor-roles package,
使用此功能,您可以使用
保护模板{{if isInRole 'Admin'}}
<!--show admin stuff-->
{{else}}
<!--sorry just admin stuff here -->
{{/else}}
并创建基本管理员帐户。
if(Meteor.users.find().count() === 0){
var users = [
{name:"Admin Example",email:"supersecretaccount@gmail.com",roles:['Admin']}
];
_.each(users, function (user) {
var id;
id = Accounts.createUser({
email: user.email,
password: "amore251327",
profile: { name: user.name }
});
if (user.roles.length > 0) {
Roles.addUsersToRoles(id, user.roles);
}
});
}
试试吧