gpt4 book ai didi

ruby-on-rails - 避免在 meta_search 中选择 * 查询

转载 作者:数据小太阳 更新时间:2023-10-29 08:13:33 25 4
gpt4 key购买 nike

我在 Rails 3 站点上使用 meta_search gem,我发现 meta_search 生成的 select * 查询在数据库架构中提取 BLOB 字段时存在一些性能问题。我不愿意迁移底层模式来解决这个问题。有没有办法在由 meta_search 生成的搜索查询中包含/排除某些字段?

最佳答案

在 Rails Active Record 中定义在查询中返回哪些字段的机制是 .select(...),默认情况下是 *。检查this SO answer了解一种定义默认范围的方法,该范围包括除一个字段以外的所有内容。

然而,关于此的警告是,当您想要写入表时,您需要覆盖默认范围——一旦您使用 .select,字段是只读的。

我使用名为 ransack 的 meta_search 的后继者,考虑到它的作者厄尼·米勒的才华,很可能有一种内置的方法可以做到这一点:-)

当我第一次开始使用 Blob 时,它们似乎是个好主意……但是,嗯,不是那么多。

关于ruby-on-rails - 避免在 meta_search 中选择 * 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7893349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com