gpt4 book ai didi

ruby-on-rails - 加速 pg_search 中使用关联的查询

转载 作者:行者123 更新时间:2023-11-29 13:33:47 24 4
gpt4 key购买 nike

我有一个使用 pg_search 的 Rails 应用程序gem 以利用 PostgreSQL 的全文搜索功能。

手册中提到搜索具有(例如)has_many 关系的模型:

Searching through associations

It is possible to search columns on associated models. Note that if you do this, it will be impossible to speed up searches with database indexes. However, it is supported as a quick way to try out cross-model searching.

最后几行似乎表明这是通过关联进行原型(prototype)搜索的好方法。是的,它确实有效。但我通常有 10 秒的返回结果延迟。有没有一种方法可以进行同样快速的跨模型搜索?

是:分别搜索两个模型,然后合并结果?

最佳答案

作为变通方法,我在主表中添加了一个 str_* 列,并在保存元素时更新此列:

  before_validation(on: :save) do
self.str_abbreviations = join_abbreviations()
# ... etc, append all columns I'd like to search through ...
true
end

关于ruby-on-rails - 加速 pg_search 中使用关联的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17931480/

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