Я создаю веб-приложение с Meteor и использую пакет Meteor Accounts-password и account-facebook, чтобы упростить вход в систему. У пользователя есть некоторая информация, связанная с ним, например, адрес электронной почты и пароль, но я хочу связать с ними дополнительную информацию после создания учетной записи.
Я знаю два способа сделать это, и мне было интересно, как мне это сделать, поскольку я не могу найти никакой информации об этом в Интернете.
Опция 1:
Я добавляю всю дополнительную информацию (например, имя пользователя, отображаемое имя и прочее) внутрь объекта Meteor.user.profile. Это кажется плохим решением, поскольку пользователи по умолчанию имеют доступ ко всему в объекте профиля, и мне приходится вручную отказывать им в доступе.
Вариант 2:
Я создаю новую коллекцию Profile-information и сохраняю все дополнительные данные о пользователе, а затем привязываю их к объекту meteor.user через какой-то общий ключ. Это также кажется плохим решением, так как мне нужно разделить свои данные, как в SQL, и не иметь всех преимуществ встроенных документов в mongodb.
Это был мой мыслительный процесс до сих пор, и я не знаю, как продолжить. Какой вариант кажется лучшим, или есть вариант 3, который будет работать лучше?
Заранее спасибо.
user.additional-data
будет интерпретировать тире как минус. Вы можете получить к нему доступ с помощьюuser['additional-data']
, но лучше использовать другое имя. - person forallepsilon   schedule 13.12.2015