2016-11-28 2 views
0

Я создаю сайт, на котором не будет регистрации. Супер администратор будет отвечать за добавление пользователей в качестве администраторов, сотрудников или обычных пользователей.Насколько гибким является пакет метеорных ролей?

супер администратор будет иметь форму для заполнения от имени пользователя, электронной почты, пароля и уровня пользователя (администратора, сотрудника или обычного пользователя.), А затем кнопку отправки, чтобы сохранить пользователя в базе данных.

Администратор, сотрудник и обычный пользователь, каждый из которых будет иметь разные роли.

Вопрос в том, можно ли сохранить пользователя в базе данных и назначить его связанным ролям на основе выбора супер администратора (администратора, сотрудника или обычного пользователя)?

+0

Вы говорите об этом пакете: https://github.com/alanning/meteor-roles? – Khang

+0

@Khang да, thats пакет я имел в виду –

ответ

1

Он достаточно гибок для того, что вы хотите.

Когда форма отправлена, Вам необходимо позвонить Accounts.createUser, а затем Roles.addUsersToRoles

See Docs here

Кроме того, рассмотрим сразу же вызвав Accounts.sendEnrollmentEmail вызов, чтобы отправить письмо со ссылкой пользователь может использовать для установки их первоначальный пароль (не известен супер-администратором или паролем по умолчанию).

+0

большое спасибо, это именно то, что я хотел услышать, чтобы я не попал в неприятности на более поздних этапах разработки, :) –

0

Да, с alanning: роли, которые вы могли бы сделать это с помощью либо Roles.setUserRoles или Roles.addUsersToRoles вроде этого:

Roles.addUsersToRoles(Meteor.userId(), ['admin']); 

код добавляет обитель зарегистрированного пользователя к роли администратора. Тогда вы можете проверить, имеет ли пользователь роль:

Roles.userIsInRole(Meteor.userId(), 'admin'); 
Смежные вопросы