问题标签 [searchlogic]

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 回答
633 浏览

ruby-on-rails - 在 Rails 中实现简单排序/搜索的最佳方法

在 Rails 中实现这样的接口的最佳方法是什么?

接口示例

目前我正在使用 Searchlogic,这有点痛苦。问题包括:

  • 确保某些操作保持正交——例如,如果您选择“Short Posts”然后搜索,则您的搜索结果应仅限于短帖子。

  • 确保正确的链接获得“选定”类。现在链接是<a>'s,所以在客户端维护这个状态是很棘手的。我通过让 AJAX 响应来破解它,比如说,排序返回一个新的排序链接部分,其中“选择”了正确的链接。使用单选按钮而不是<a>标签可以更轻松地维护状态客户端——也许我应该这样做?

0 投票
8 回答
16171 浏览

ruby-on-rails - 使用 Rails 进行全文搜索

我一直在寻找 Rails 的插件/宝石。大多数文章将 Ferret (Lucene) 与 Ultrasphinx 或可能的 Thinking Sphinx 进行了比较,但没有一篇文章提到SearchLogic。有没有人知道这个比较如何?你用什么,它的表现如何?

0 投票
3 回答
2203 浏览

sql - Rails/AR 找到 habtm 不包含的地方

我有一个带有用户的 Rails 应用程序,每个用户都有 HABTM 角色。

我想选择没有特定角色的用户。我可以使用搜索逻辑,但我迷路了。我尝试过使用条件、连接和包含的组合,但我似乎无法确定它。这有效:

查找不是管理员的用户,但找不到没有角色的用户(我也想找到)。

在我疲惫的状态下,我错过了什么简单的事情?

0 投票
1 回答
372 浏览

ruby-on-rails - 搜索逻辑 + STI

尝试实现使用与 STI 关联的搜索逻辑搜索,但我遇到了一个问题,即它没有选择 STI 记录作为子类而是父类。

例子:

当我搜索“艺术家代理公司喜欢”时,它基于代理作为用户而不是代理进行搜索:

select * from users WHERE users.company LIKE

而不是

select * from users AS agents WHERE agents.company LIKE

想知道我是否可以在 ActiveRecord 类级别预先解决这个问题(例如,在关联中,我想如果你可以指定代理将被加载 :as=>:agent 或类似的东西),或者我是否会需要修补 searchlogic 或我可以做些什么来完成这个。

我想到的另一个选项,我害怕这个想法,是在用户表上添加一个字段,其中包括个人机构的列表。例如 users.agencies => 机构一名称,机构二名称

0 投票
5 回答
5313 浏览

ruby-on-rails - 用 OR(而不是 AND)组合两个命名范围

我想找到所有Annotations的身体是:

  • 等于 ”?”
  • 或者
  • 喜欢 ”[?]”

最好的方法是什么?

如果可能,我想使用SearchLogic,但尽管 SearchLogic 允许您执行以下各项:

  • Annotation.body_equals('?')
  • Annotation.body_like('[?]')

你总是可以将它们链接在一起:Annotation.body_equals('?').body_like('[?]')

我不确定如何将它们与OR.

请注意,OR 如果它们的参数相同,您可以将命名范围与它们结合起来。例如,我可以这样做:

但这无济于事。

请注意,我没有附加到 SearchLogic,但它对于不需要破坏其抽象的解决方案来说会很棒。

0 投票
3 回答
552 浏览

sql - 对连接表中没有键的所有记录和具有匹配键的记录进行单一查询

我有一个有很多住所的旅行。我需要一个查询来返回未指定居住信息的所有旅行。以及与指定居住地相匹配的所有旅行。

我可以从这个查询中得到第一个:

但要获得第二个,我还需要添加这一点:

在 WHERE 子句之前添加联接要求具有驻留 ID 和没有驻留 ID 的结果。这显然没有回报。那么如何编写此代码以在一个查询中获得完整的结果集呢?不允许使用存储过程。

我正在使用 Rails,所以如果答案是特定于 Rails 的,这是一个奖励(但绝对不是必需的)。如果有人可以展示如何使用 searchlogic 插件完成此操作,那将是一个巨大的奖励。

目前,我的第一个要求是命名范围:

第二个要求可通过 searchlogic 获得:

理想的解决方案是如下所示的 searchlogic 范围:

0 投票
1 回答
1534 浏览

ruby-on-rails - 将 searchlogic 与 will_paginate 一起使用

编辑看起来我想通了 - 在all从 Searchlogic 调用之后我不得不调用 paginate。

我正在尝试使用这两种工具来使用户能够搜索联系人并返回分页列表(如果他们不输入任何搜索条件,则返回整个分页列表)。但是,我不确定将它们链接在一起的正确方法,而我正在尝试的是给我错误。

这是我的控制器:

这给了我错误Undefined method 'all' for WillPaginate。删除 all 会给我一个错误,因为视图正在寻找包含 20 次“联系人”一词的路径(例如contact_contact_contact..._path),大概是因为默认的“每页”是 20。

我究竟做错了什么?我想在这个页面上进行搜索、排序和分页。

0 投票
1 回答
530 浏览

ruby-on-rails - 从一个控制器使用 Searchlogic 和多个模型

我究竟如何将 Searchlogic 与多个模型一起使用?我有一个仪表板,它从 3 个模型中提取数据并将它们显示在网格(表格)中 - 我想允许对所有这三个模型进行排序和搜索,但 Searchlogic 似乎要求我使用“搜索”作为参数名称;做类似的事情:

在控制器中,并且:

当我尝试对记录进行排序时,视图中什么都不做。将其中一个更改为params[:search]正常工作,但这不是我在这种情况下所需要的。

0 投票
1 回答
264 浏览

ruby-on-rails - 使用 globalize2 的搜索逻辑?

鉴于有一个模型:

并且搜索逻辑已插入,我希望以下工作:

可悲的是,它没有:

有没有办法让工作?


PS我最接近工作的是:

这看起来不太好。

0 投票
1 回答
2395 浏览

ruby-on-rails - Rails:使用或条件搜索逻辑搜索

我正在使用 2.3.5 版中的“binarylogic-searchlogic”gem 以及 Rails 2.3.4。

我想要做的是在模型上搜索多个属性的指定值。我通过将所有内容链接在一起来实现这一点

但是随着这个搜索中越来越多的属性,这往往是丑陋的。相反,我想像这样使用 searchlogic 的搜索机制:

所以这是通过 AND 搜索的方式 - 但我想要的是 OR。我找到了两种方法来实现这一点,但都不起作用。

第一个:在条件前面加上 or_

这给了我The or_last_name_like is not a valid condition. You may only use conditions that map to a named scope

第二个:使用search.any

给我undefined method任何'为#`。

有什么想法吗?我错过了自述文件的正确点吗?

感谢您非常欢迎的帮助!

编辑:一些丑陋的解决方法的时间:

工作,但肯定不是要走的路,不是吗?