Как изменить URL-адрес пароля reset в метеоре?
Я использую meteor вместе с account-password. Я запускаю свой собственный логин и пароль, меняя/перезаписывая пользовательский интерфейс и хочу знать...
Как настроить пароль reset в письме пароля reset, отправленном в результате Accounts.resetPassword
?
В настоящее время он выглядит так: /#/reset-password/<id>'
. Так как я использую
Ответы
Ответ 1
См. раздел в шаблонах электронной почты в документах Meteor:
resetPassword: объект с двумя полями:
- resetPassword.subject: функция, которая принимает объект пользователя и возвращает строку для строки темы reset пароля.
- resetPassword.text: функция, которая принимает объект пользователя и url, и возвращает основной текст для электронной почты reset.
Вы можете настроить, какой URL-адрес передается методу электронной почты reset:
Accounts.resetPassword.text = function(user, url) {
return "Click this link to reset your password: /reset-password/" + myId;
}
Ответ 2
Поздно к вечеринке...
Вместо изменения всего текста вы можете просто изменить URL-адрес:
Meteor.startup(function() {
Accounts.urls.resetPassword = function(token) {
return Meteor.absoluteUrl('reset-password/' + token);
};
});
Ответ 3
Это немного изменилось:
Вы должны использовать
Accounts.emailTemplates.resetPassword.text
Для URL вы можете просто заменить hashbang вместо того, чтобы анализировать токен из URL. Как пример (в coffeescript):
Meteor.startup(() ->
Accounts.emailTemplates.resetPassword.text = (user, url) ->
url = url.replace('#/', '')
return "Click this link to reset your password: " + url
)
ES6
Meteor.startup(() =>
Accounts.emailTemplates.resetPassword.text = function(user, url) {
url = url.replace('#/', '');
return 'Click this link to reset your password: ${url}';
}
);