全文搜索具有用户的实体

时间:2017-06-13 15:26:43

标签: java spring elasticsearch jhipster

我有一个包含两个实体的简单Web应用程序:

  • 用户
  • 州(带字段:用户所有者用户)

用户可以创建和阅读自己的状态。我为各州创建了全文搜索(elasticsearch),但我的搜索返回了所有状态,不仅由登录用户创建。我试过这样的东西,但它不起作用:

public Page<StatusDTO> search(String query, Pageable pageable) {
    log.debug("Request to search for a page of Statuses for query {}", query);
    String login = SecurityUtils.getCurrentUserLogin();
    SearchQuery searchQuery = new NativeSearchQueryBuilder()
        .withQuery(queryStringQuery(query))
        .withFilter(boolQuery().filter(termQuery("ownerUser : login", login)))
        .build();

    Page<Status> result = statusSearchRepository.search(searchQuery.getQuery(), pageable);
    return result.map(statusMapper::toDto);
}

1 个答案:

答案 0 :(得分:0)

你能试试吗

.withFilter(boolQuery().filter(termQuery("ownerUser.login", login)))