使用DBRef查询集合

时间:2013-02-25 07:33:48

标签: spring-data spring-data-mongodb dbref

我有2个实体如下:

@Document
public class Freelancer {
 @Id
 String id;
 String name;
 @DbRef
 List<Project> bidProjects;
}

@Document
public class Project {
 @Id
 String id;
 String name;
}

项目无法让自由职业者参考,因为可能有很多自由职业者可以投标项目。我想做以下事情:

找到对名称为“XYZ”的项目进行出价的自由撰稿人。

这个查询应该是什么(基于JSON的查询),我试过跟随(其他组合但没有任何作用):

@Query("{ 'completedProject': {'$ref': 'project', 'name': ?0 } }")
@Query("{ 'completedProjects': {'$ref': 'project', 'name': ?0 } }")
@Query("{ 'completedProject': [{'$ref': 'project', 'name': ?0 }] }")

1 个答案:

答案 0 :(得分:1)

{ 'fieldName': {'$ref': 'collectionName', '$field': { '$ofield' : ?0 } } }

所以它会是

@Query("{ 'bidProjects': {'$ref': 'project', '$name': { '$oname' : ?0 } } }")