default_scope -> { kept } in rails 是什么意思?

what does default_scope -> { kept } in rails means?

我是 rails 世界的新手。在我正在工作的现有 rails 项目之一中,我在模型 class 中看到一条线,如下所述。有人可以告诉我这是什么意思吗?我尝试搜索文档,但在任何地方都找不到“kept”关键字。

default_scope -> { kept }

据我所知,这是一个 gem 可能提供的范围,允许您“丢弃”记录(而不是删除它们)。默认范围设置为仅保留 return 个结果(即不丢弃)。当然,功能也可以手动开发,但随后您会在项目中找到代码(例如,在模型或关注点中)。

实现此目的的流行 gem 是 https://github.com/jhawthorn/discard(不隶属于它),它有效地使用了 kept。也许检查你的 Gemfile 你的项目使用什么 gems 并搜索他们的文档。