rails上的ruby-为什么将find与will_pagenate一起使用很危险



在整理了一个bug后,我在常见问题解答中发现了以下内容。

您可能正在尝试对静态数组进行分页,而不是在数据库中执行分页查询。例如,在活动记录查找或所有方法之后链接一个分页调用是错误的:

上面的行将返回所需的结果,但不能达到分页的目的。在这里,find查询将首先从数据库中加载所有记录,这是危险的,应该避免

我的问题是,为什么繁殖一个发现是危险的?

分页是为了防止不必要的数据库加载:您只需要数据库中的一些元素,所以只加载它们。

使用find加载所有内容,然后进行排序。

Dangerous==数据库负载过重,因此可能发生崩溃。

最新更新