Em đang dùng Lookup trong MongoTemplate để join 2 collection như sau:
public List
ProjectionOperation projectionOperation = Aggregation.project()
.and(ConvertOperators.valueOf("userId").convertToObjectId()).as("userId");
Aggregation aggregation = Aggregation.newAggregation(
projectionOperation,
Aggregation.lookup(departmentCollectionName, "_id","userId","departments")
);
AggregationResults
aggregation, userCollectionName, UserWithDepartment.class);
return results.getMappedResults();
}
Vấn đề của em là "_id" kiểu dữ liệu objectId còn "userId" kiểu dữ liệu String vì vậy em cần convert về 1 kiểu dữ liệu nhưng đang gặp lỗi này: Unrecognized expression '$toObjectId'
Anh đã gặp lỗi này chưa và cách khắc phục là gì ạ.
Em cảm ơn ạ