Я создал приложение, которое пользователи могут регистрировать, входить в систему и создавать информацию.Каждый пользователь может в настоящее время войти в систему и иметь доступ к заметкам, которые он / она создал.В общем, я создал методы публикации и подписки.
У меня есть логин администратора, который может просматривать и обновлять все документы, созданные разными пользователями.Теперь я хочу сделать это наоборот.Я не хочу, чтобы пользователи регистрировались, администратор должен создавать учетные записи пользователей и создавать для них начальные заметки.Как только данные для входа в систему будут предоставлены, пользователь должен иметь возможность войти в систему, просмотреть, прочитать и обновить информацию, созданную пользователем с правами администратора.
Моя проблема в том, как мне сопоставить пользователя с документом, поскольку он будетсоздано пользователями-администраторами?
Текущее создание пользователя:
import { Meteor } from 'meteor/meteor';
import SimpleSchema from 'simpl-schema';
import { Accounts } from 'meteor/accounts-base';
export const validateNewUser = (user) => {
const email = user.emails[0].address;
new SimpleSchema({
email: {
type: String,
regEx: SimpleSchema.RegEx.Email
}
}).validate({ email });
return true;
};
if (Meteor.isServer) {
Accounts.validateNewUser(validateNewUser);
}
Создание документа
Meteor.publish("docs", function() {
return Docs.find({ userId: this.userId });
});
Meteor.methods({
"docs.insert"(
name,
title,
purpose
) {
if (!this.userId) {
throw new Meteor.Error("not-authorized");
}
return Docs.insert({
name,
title,
purpose
userId: this.userId,
});
},
Пользователь-администратор создаст как учетные записи пользователей, так и информацию о пользователе. Как это сделать?Я сопоставляю учетную запись пользователя с информацией о пользователе, чтобы пользователь мог войти в систему и просмотреть информацию, которая была добавлена для него?