我在Meteor应用中使用useraccounts包。我希望管理员能够添加新用户(并禁用通过前端注册)。因此,我根据meteor-collection2的建议添加了一个带有SimpleSchema的Collection。我也使用AutoForm来创建“添加用户”页面。
<template name="addCustomerProfile">
<div class="container">
<h1>Edit document</h1>
{{#if isReady 'updateCustomerProfile'}}
{{#autoForm collection="Users" id="userForm" type="insert" }}
<fieldset>
{{> afQuickField name='emails.0.address'}}
{{> afQuickField name='emails.0.verified'}}
{{> afQuickField name='services.password'}}
{{> afQuickField name='username'}}
{{> afQuickField name='profile.firstName'}}
</fieldset>
<button type="submit" class="btn btn-primary">Add User</button>
{{/autoForm}}
{{else}}
Nothing
{{/if}}
</div>
</template>
每当'services.password'未添加到表单时,我都可以添加用户,但显然在这种情况下没有为Mongo数据库中的用户设置默认密码。如何添加字段,以便管理员可以为该用户设置默认密码(之后用户可以更改)。
答案 0 :(得分:0)
为什么不只是sendEnrollmentEmail
和Accounts.config({
forbidClientAccountCreation: true
});
Meteor.methods({
'inviteUser': function (doc) {
check(doc, YourForm);
let userId = Accounts.createUser(doc);
Accounts.sendEnrollmentEmail(userId);
}
});
?
$.ajax({
url: '...'
}).done(function(data){
// create jQuery object from response
var $html = $(data);
//hide within that object
$html.find('.search-form-for-hide').hide();
// insert the object
$('div.show-html-from-ajax').html($html);
/******* OR ***************/
// the html is in the DOM now, can do whatever might be needed to it
$('.search-form-for-hide').hide();
});