В моем приложении я хочу заполнить базу данных пользователями и отправить им ссылку для регистрации, чтобы активировать их учетную запись (и выбрать пароль). Я также хочу, чтобы они проверили/изменили некоторые данные профиля.
На сервере я заполняю базу данных следующим образом:
Meteor.startup(function () {
if(Meteor.users.find().count() === 0) {
var user_id = Accounts.createUser({ email: '[email protected]', profile: { some: 'profile' } });
Accounts.sendEnrollmentEmail(user_id);
}
})
Ссылка для регистрации отправляется, как и ожидалось, но я хочу создать собственный шаблон для щелчка по URL-адресу в электронном письме. Желательно обрабатывается железом-роутером. (Не используя пакет account-ui).
Я пробовал такие вещи, как перенаправление пользователя на настраиваемый маршрут, например:
var doneCallback, token;
Accounts.onEnrollmentLink(function (token, done) {
doneCallback = done;
token = token;
Router.go('MemberEnroll')
});
который не работает (он меняет URL-адрес, но не отображает мой шаблон)
Я также попытался изменить URL-адрес регистрации на сервере следующим образом:
Accounts.urls.enrollAccount = function (token) {
return Meteor.absoluteUrl('members/enroll/' + token);
};
Но когда я это делаю, обратный вызов Accounts.onEnrollmentLink
не срабатывает. Кроме того, изменение URL-адреса не задокументировано, поэтому я не уверен, что это хорошая практика.
Любая помощь приветствуется.