0

我有一个名为User. 当我销毁用户并重定向到用户的索引页面时,它会引发异常 ActiveRecord::RecordNotFound: Couldn't find all Users with IDs (1, 200) (found 1 results, but was looking for 2) 但是当我刷新页面时,页面会正确加载并显示所有用户。我猜的问题Tire::Model::Callbacks after_destroy是需要一些时间来执行,如果我User.search_all在那个时间段内调用,搜索结果包括被破坏的 id。我正在寻找一种干净的方法来克服这个问题。或者轮胎有任何选择来处理这个问题吗?提前致谢。

4

1 回答 1

2

在调用 User.search_all 之前向 Elasticsearch 发送刷新调用。Elasticsearch refresh_interval 默认为 1 秒,因此如果您从中删除并在一秒钟内进行搜索,它可能没有机会在将结果返回给您之前删除已删除的记录。

于 2013-05-20T21:36:27.983 回答