Поскольку Карты представляют собой собственную коллекцию, вам нужно будет выполнить итерацию по каждой коллекции Карт, в которой выполняется поиск Места, на которое ссылается ваш Игрок.
Вы не можете получить доступ к встроенным документам напрямую.Вы должны войти в коллекцию и продолжить свой путь вниз.
Чтобы избежать итерации всех Карт, вы можете сохранить как ссылку на местоположение, так и ссылку на карту в вашем документе Player.Это позволяет вам связать критерии, которые выбирают вашу карту, а затем местоположение в ней.Вы должны написать метод в своем классе Player, чтобы справиться с этим.
def location
self.map.locations.find(self.location_id)
end
Итак, аналогично тому, как вы ответили сами, за исключением того, что вы все равно можете сохранить location_id в своем документе игрока, вместо того чтобы использовать атрибуты ord.1008 *
Другим способом было бы поместить Карты, Местоположения и Игроков в свои собственные коллекции вместо встраивания Местоположения в свою коллекцию Карт.Тогда вы могли бы использовать ссылочные отношения, не делая ничего сложного ... однако на самом деле, если вы просто используете иерархическую базу данных, на данный момент это реляционная база данных ...