问题标签 [pg-search]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1513 浏览

ruby-on-rails - 对多个模型使用 pg_search

现在我有三个模型:餐厅、类别和项目。所有这些表都有一个名称属性。我想在可以访问所有 3 的主页上设置搜索。进行搜索时,搜索将带回餐厅名称、类别名称和/或项目名称。

我在 Rails 4 应用程序中使用 pg_search。 https://github.com/Casecommons/pg_search

到目前为止,我已经捆绑了 gem,设置了多搜索并运行了迁移。我的模型目前如下所示:

楷模

使用搜索框查看

餐厅控制器

问题

  • 控制器没有正确取回多重搜索项。我该如何正确地写这个?
  • 如果我想在一个视图上实现所有三个搜索结果,我应该设置一个新控制器还是将类别和项目也添加到餐厅控制器?
  • 请发送任何好的例子。
0 投票
1 回答
341 浏览

ruby-on-rails - 如何在 Rails 中使用多个(ASC 和 DESC)字段对全文搜索进行排序或排序?

我了解到我无法在 ActiveRecord 中进行加入然后下订单。这似乎也适用于 pg_search 的 full_text_search 方法。例如,这不适用于我期望的排序:

之后我必须 sort_by 吗?我基本上有一个可用的 order_array: ["question ASC", "answer DESC"] 并且可以这样做,但必须有更好的方法,不是吗?

0 投票
2 回答
96 浏览

ruby-on-rails - Rails 输出多态关联

我想通过使用 pg_search gem 在我的 Rails 应用程序中实现搜索功能。我已经按照文档中的说明设置了所有内容。然后我设置了一个带有显示操作的搜索控制器:

搜索本身有效,但我认为我有一个非常烦人的问题。无论我做什么,它总是输出一组 PgSearch::Document 对象。即使我只在我看来写这个:

我明白了(我已经缩短了它):

我知道 pg_search 建立了一个我以前从未处理过的多态关联——这可能是问题吗?

提前致谢

0 投票
1 回答
367 浏览

ruby-on-rails - 将数组传递给 PgSearch.multisearch

我将尝试在我的应用程序中使用 PgSearch.multisearch。

有没有办法将数组传递给 PgSearch.multisearch() 方法?

返回一条记录

返回空数组

0 投票
1 回答
240 浏览

ruby-on-rails - 如何获取与搜索查询匹配的列?

我正在尝试pg_search在我的 Rails 应用程序中实现,想知道是否有办法获取与搜索查询匹配的列?索引表内容由所有可搜索的列字段组成。

例如:

将导致:

现在我不知道我的搜索查询是否匹配名字或姓氏。是否有任何选项可以告诉pg_search将列标题添加到内容列?就像是:

或者有没有适合我需要的搜索选项?pg_search效果很好,特别是因为我的多租户/postgres-schema 架构。

0 投票
0 回答
545 浏览

ruby-on-rails - Rails 4 and pg_search GEM

I am trying to create a search form where a user will be able to enter text and the backend will run PgSearch.multisearch in order to retrieve values from a Customer and Account model.

I have set up my two models according to the pg_search gem's page. When I run a PgSearch.multisearch("foo") in my rails console it returns results as expected.

My question is how do I display all relevant results in my view? (Can't seem to figure this one out)

Currently my controller looks like this (params[:search][:token] == "foo"):

In my view I tried:

I keep on getting an error stating "undefined method `each' for nil:NilClass"

What I'd like to achieve is to display all results in my view.

UPDATE 2

Running PgSearch.multisearch("foo") in console returns:

When I render PgSearch.multisearch(params[:search][:token]) as text in my browser it only shows a "#".

I figured that this is normal behaviour for a ActiveRecord::Relation, as the same output structures occur when I try to output the results of a AR scope in console vs browser.

UPDATE 3

enter image description here

Can somebody please provide some help?

0 投票
2 回答
443 浏览

jquery - 在搜索时触发 AJAX (pg_search gem)

我有一个使用 pg_search gem 的搜索表单。我基本上是从 Railscast #343 改编而来的。

但是,无论我尝试什么,它总是会在搜索时重新加载页面。

我尝试在表单中添加 :remote => true 并使用 format.js 在控制器中放入一个 respond_to 块。我还尝试在仅返回 js 但我的页面始终使用 url 中的参数重新加载的路由中创建单独的“/search”路径。

这是相关的代码位:

形式:

控制器:

模态:

路线

这显然是因为它没有任何 ajax 功能。有人介意向我展示我必须做什么才能谨慎地提交参数,而无需重新加载页面并触发 js 作为响应吗?

我在整个网站上都使用了 ajax,不知道是什么阻碍了我:( 谢谢!

0 投票
1 回答
86 浏览

ruby-on-rails - 为什么在针对一个字段与多个字段进行作用域时,我从 rails pg-search 得到不同的结果

这是我的代码的摘录:

这是从代码生成的 SQL 和结果:2.0.0-p353:073 >

如您所见,针对单个字段的第一次搜索生成 1170 条记录,而针对所有允许字段的第二次搜索仅返回 4 条记录。我不是 PostgreSQL 专家,但在我看来,两者应该返回相同数量的记录。

此外,proc 用于“fuzzy_search”,否则“searchable_fields”方法会产生错误。这是一个已知问题:未解决的问题

0 投票
1 回答
599 浏览

ruby-on-rails - 如何将 pg_search 与 globalize 一起使用?

我使用 pg_search gem 在我的 rails 应用程序中进行搜索。我的应用程序中的主要模型是:

它与完美配合

在 BooksController 的索引操作中。然后我添加了 gem 'globalize':

现在搜索不起作用。

找不到任何字段。有人使用 pg_search gem 和 globalize gem 吗?

0 投票
4 回答
2498 浏览

ruby-on-rails - Rails 中三元组搜索的迁移

我有一个迁移:

它在以下位置生成此代码schema.rb

后来,当我执行rake db:schema:load它时会生成错误的sql:

首先,它说:

错误:数据类型字符变化没有访问方法“gin”的默认运算符类

其次,有失gin_trgm_ops

如何使它起作用?

Rails 4.2