2015-01-16 4 views
1

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

Я искал везде модули npm, которые я мог использовать, и я искал google и stackoverflow, но я ничего не нашел.

Это моя модель группы, которую я добавляю в свой проект.

var groupSchema = mongoose.Schema({ 
    name: String, 
    motivation: String, 
    destination: String, 
    days: String, 
    members: [String], 
    profile: String 
}); 

module.exports = mongoose.model('Group', groupSchema); 

У кого-нибудь есть хороший способ сделать это?

Примечание: Я использую groupController, и я думал использовать 3 действия. Один для шоу «Пользователи», «Один для добавления пользователя и одного», но он не работает.

ответ

1

К сожалению, для узла еще нет действительно хорошо скругленных фреймворков авторизации (afaik).

Я являюсь автором библиотеки express-stormpath, которая выполняет некоторые из этих действий, но пока не является обязательной для всех правил авторизации.

Путь библиотека экспресс-stormpath работает, например, так:

  • У вас есть объект Account.
  • У вас есть объект Group.

Вы можете создавать группы и назначать учетные записи этим группам. Таким образом, вы, возможно, есть группы, называемые:

  • админы
  • пользователей
  • Анонимные
  • т.д.

Затем на каждой группе, вы можете хранить данные разрешения, используя этот JSON блоб вещь. Таким образом, вы можете сделать что-то вроде:

Group.customData.permissions = ['can_read', 'can_write', ...];

Библиотека также предоставляет некоторые межплатформенного инструменты для работы с пользователями/группами, к примеру, вы можете сказать что-то вроде:

app.get('/secret', stormpath.groupsRequired(['admins']), function(req, res) { 
    // if you get here, you must be in the admins group 
}); 

Если вы хотите, чтобы проверить это, вы можете прочитать больше об этом здесь: https://docs.stormpath.com/nodejs/express/

+0

Я попытался адаптировать Stormpath, но он не сработал чувак –

+0

Какой у вас вопрос? Я рад помочь. Кроме того: вы можете указать проблему github, если у вас возникнут проблемы. Я поддерживаю библиотеку и обычно обрабатываю ее. – rdegges

Смежные вопросы