Производные запросы не работают с DBRef

Я использую Mongo с Spring Data.

У меня есть две (первого класса) сущности (@Documents) Entity1 и Entity2, где Entity1 имеет ссылку (@DBRef) на Entity2 внутри. Все работает нормально, но при выполнении производных запросов, таких как:

public List<Entity1> findByEntity2Property1(String property1)

Приведенный выше запрос не возвращает результатов, хотя есть документы с заданными параметрами запроса. Это почему?

1 ответ

Я не думаю, что запрос может работать, поскольку вы ожидаете, что он будет работать, поскольку MongoDB в значительной степени не позволяет ограничивать результаты по свойствам связанных документов, на которые указывают через DBRef, Таким образом, вы должны запросить все Entity2 экземпляры, соответствующие заданному значению свойства Property1 а затем запросить Entity1 экземпляры, соответствующие DBRefed свойство против результатов первого запроса.

Другие вопросы по тегам