Я ведущий разработчик Apostrophe на P'unk Avenue.
Это работает в некотором смысле, однако пользователи по умолчанию не публикуются, так как это поле удалено из схемы, поэтому публика никогда не сможет их найти.
Это связано с тем, что в нашем опыте смешивание концепции человека в лицевой директории людей и пользователя, который может войти в систему, обычно приводили к разочарованию и путанице в Apostrophe 0.5. «Это пользователь, но они не могут войти в систему? Это учетная запись, но они не входят в каталог? Я не понимаю» и т. Д.
Поэтому мы рекомендуем сделать отдельный «профиль», чтобы представить человека на лицевой стороне и разрешить пользователям и группам использовать для входа и разрешений и ничего другого.
Можно добавить опубликованное поле обратно пользователям и группам, если вы действительно хотите через addFields
, но мы не рекомендуем его.
Мда, но все, что было сказано, фактическая ошибка в вашем присоединиться в том, что вы должны были использовать apostrophe-user
(см name
свойство в модуле апостроф-пользователей, это то, что один пользователь называется, в свойстве типа в коллекции документов, которая отличается от имени модуля). Экземпляры сингулярны, модули множественные. В зависимости от вашего предполагаемого приложения это может быть то, что вам нужно знать.
Что касается присоединения только к тем, кто является членами определенной группы, мне интересно, почему вы не присоединяетесь к этой группе и не смотрите на ее соединение _users
. Вам нужно будет установить фильтр join
для явного получения этого дополнительного соединения, поскольку Apostrophe не рекурсивно объединяется по умолчанию для предотвращения бесконечных циклов.
Благодарим вас за подробный ответ. Я полностью согласен с вашей логикой в том, что вся модель пользовательских/разрешений скрыта, однако на этот раз вокруг действительно имеет смысл быть частью одной и той же модели, поэтому я попробую сделать это. Еще раз спасибо :) –