首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FOSElasticaBundle结果与理论结果不同吗?

FOSElasticaBundle结果与理论结果不同吗?
EN

Stack Overflow用户
提问于 2014-04-05 17:46:30
回答 1查看 423关注 0票数 0

为什么下面的查询返回不同的结果?更多细节

  • 我想得到所有的活跃帖子,由tttAt降序。
  • Doctrine2返回我的预期结果,但不返回FOSElasticaBundle
  • Doctrine2返回所有记录,但FOSElasticaBundle只返回10条第一条记录,但是请忽略这一点,因为即使是来自Doctrine的前10条记录也与来自FOSElasticaBundle的记录不同。

FOSElasticaBundle查询:

代码语言:javascript
复制
    /** @var TransformedFinder $finder */
    $finder = $this->container->get('fos_elastica.finder.index_name.post');
    $query = new Query();
    $filter = new Term(array('status' => PostModel::STATUS_ACTIVE));
    $query->setFilter($filter);
    $query->addSort(array('tttAt' => array('order' => 'desc')));
    $posts = $finder->find($query);

Doctrine2查询:

代码语言:javascript
复制
    $posts = $this
        ->getDoctrine()
        ->getRepository('ItlizedFairdomBundle:Post')
        ->findBy(array('status' => PostModel::STATUS_ACTIVE), array('tttAt' => 'DESC'));
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-06 07:31:57

我刚刚找到了原因: ES与MySQL不同步,因为MySQL中的数据是导入的,因此ES不知道DB更改(插入、更新或删除、.)。

运行app/console fos:elastica:populate后,现在的结果是一样的.

我的错!谢谢@ Thanks :)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22884457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档