Я хочу использовать мои пользователь коллекции
Когда я users = new Mongo.Collection('users');
Тогда ошибка: here is already a collection named "users"
Что я должен делатьКак изменить имя коллекции пользователей метеоров?
ответ
На самом деле у вас уже есть название коллекции «пользователи», если вы видите ваши коллекции MongoDB?.
при установке пакета 'accounts-base'
в вашем проекте он автоматически создаст коллекцию с именем пользователя.
поэтому вы не можете создать новую коллекцию с тем же именем. , если вы хотите использовать данные «users
», тогда просто используйте Meteor.userId()
и Meteor.user()
. Используйте console.log(Meteor.user())
, чтобы увидеть данные.
Если вы действительно хотите вторую коллекцию пользователей, то сделать:
Users = new Mongo.Collection('myusers');
или
Users = new Mongo.Collection('users2');
Но это на самом деле не рекомендуется, если вы используете пакет счетов из-за возможной путаницы, особенно если кто-то другой работает над вашим проектом.
Существует также фактическое соглашение Метеор, что переменные коллекции определяются с помощью начальной буквы в верхнем регистре, но все они имеют нижний регистр в монго, как указано выше.
Спасибо за ваш совет. На самом деле есть два проекта метеора, которые используются' account-base', один из которых хочет получить доступ к «пользователям» другого проекта, как вы думаете, мне следует делать? – zhouxiang
Если они делят базу данных mongodb, вам не нужно создавать вторую коллекцию - обе приложения могут совместно использовать коллекцию пользователей. Это общая схема при разбиении приложений Meteor. –
Можете ли вы дать дополнительную информацию о том, почему вы хотите изменить название коллекции? Вы используете пакет '' 'account-base''', который дает вам доступ к коллекции Meteor.users. Вот почему вы не можете создать коллекцию с тем же именем. Есть ли какая-то конкретная причина, по которой вы хотите изменить имя? – Sean
На самом деле есть два проекта метеора, которые используются 'account-base', один из которых хочет получить доступ к« пользователям »другого проекта. – zhouxiang