我试图查询包含@reference as属性的模型,如:
public class TaskGroups {
@Reference
Branch branch;
.
.
.
}
以此类推,然后我有一个查询,有更多的逻辑和代码,但在resume中,我必须根据branch object的字段id进行过滤,它只是对象上的id,但数据库上的id,没问题,它是框架的正常行为。
好了,现在代码不起作用了:
public class TaskGroupRepositoryImpl implements TaskGroupCustomRepository {
private final MongoTemplate mongoTemplate;
@Autowired
public TaskGroupRepositoryImpl(MongoTemplate mongoTemplate) {
this.mongoTemplate = mongoTemplate;
}
@Override
public List<TaskGroup> query(TaskGroupDynamicQuery queryObject) {
Query query = new Query();
final List<Criteria> criterias = new ArrayList<>();
criterias.add(Criteria.where("deleted").is(false));
if (queryObject.getBranchId() != null) {
criterias.add(Criteria.where("branch._id").is(new ObjectId(queryObject.getBranchId())));
}
.
.
.
}
因此,当代码运行时,查询将字段“branch.\u id”更改为only branch!然后没有记录返回。。。
对于这种行为,我需要做一个变通方法,将结果Map到just object,然后转换到taskgroup类,这样查询就不会对属性名和过滤器ocurs进行任何修改。
这是虫子吗?或者它的正常行为?有什么解决方法可以避免在id字段中更改属性名吗?
收件人。
暂无答案!
目前还没有任何答案,快来回答吧!