如何解决对any_word使用规范化
我使用的是Rails 6和pg_search 2.3.2,我使用的是pg_search_scope,不是多重搜索的,因为我只有一个ActiveRecord模型,我的搜索查询至少包含2个单词,所以使用normalization
可以得到正确排序的结果但是使用any_word:true
可以得到几个结果,但结果数量正确,但是顺序不是最相关的,就像归一化提供的顺序一样。所以我想同时使用any_word进行标准化,这似乎没有预期的结果。要获得大量按归一化的结果。
我尝试将Union与ActiveRecord结合使用,并将这两个结果结合起来,但是它会使响应时间加倍,而且我什至没有检查分页是否正常工作。
我的问题是normalization
是否可以与any_word:true
一起使用?
当前代码为:
class Institute < ApplicationRecord
include PgSearch::Model
pg_search_scope :filter_by_name_normalized_any_word,against: [
[:name,'A'],[:aliases,[:acronyms,[:labels,],using: {
tsearch: {
dictionary: 'simple',any_word: true,normalization: 6,tsvector_column: %w[tsv_name tsv_alt_name tsv_source_data tsv_extra_data]
},},order_within_rank: "institutes.weight DESC",ignoring: :accents
pg_search_scope :filter_by_name_extended,[:source_data,'C'],[:data_external_ids,'D'],[:grid_id,[:links,[:data_relationships,ignoring: :accents
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。