Как получить доступ к профилю meteor.users

Я пытаюсь просто запросить имя пользователя с таким _id;

profile = Meteor.users.find({_id: userId}, {fields: {"profile" : 1}});

РЕДАКТИРОВАТЬ**

Идентификатор пользователя будет исходить из параметра URL-адреса (я использую его для маршрутизации на страницы профиля пользователя)

Предполагая, что в профиле есть поле «имя», я бы предположил, что вызов profile.name даст имя пользователя. Но это показывает, что profile.name не определено. console.log(профиль) показывает [объект Объект]. я тоже пробовал

name = Meteor.users.find({_id: userId}, {fields: {"profile.name" : 1}});

но это дает то же самое, console.log(name) -> [object Object] name.name -> undefined (в случае, если он вернул объект, например {name: "jon doe"}, я бы назвал name.name)

Что я делаю не так?


person Mario Machado    schedule 17.03.2016    source источник
comment
Вам просто нужно Meteor.user().profile.name. Смотрите дублированный вопрос для более подробной информации. Также см. раздел поиска и извлечения распространенные ошибки, чтобы понять, почему описанное выше не работает.   -  person David Weldon    schedule 18.03.2016
comment
Я отредактировал вопрос, но я пытаюсь отображать страницу профиля пользователя независимо от того, кто вошел в систему... поэтому я не всегда могу использовать Meteor.user().profile.name. Я должен иметь возможность запрашивать профиль любого пользователя в любой момент время. я тоже пробовал profile = Meteor.users.find({_id: userId}, {fields: {"profile" : 1}}).fetch(); тоже не помогло   -  person Mario Machado    schedule 18.03.2016
comment
Вы должны использовать findOne, если вам нужен один документ. Попробуйте var profile = Meteor.users.findOne({ _id: userId }).profile;   -  person David Weldon    schedule 18.03.2016