问题标签 [ransack]
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.
ruby-on-rails-3.1 - Rails - 我可以同时使用 Ransack 和 CanCan 吗?
我正在尝试根据用户的授权获取搜索结果...
ruby-on-rails - Rails - Ransack - 自定义属性选择
我在ransack
Rails 应用程序中使用 gem 进行高级搜索。如何过滤该attribute_select
方法以不显示某些字段,例如id
andcreated_at
等。
我上面的当前方法只是列出了所有属性。
ruby-on-rails - 在 Ransack 上为 Rails 设置默认搜索参数
我一直在为此绞尽脑汁,但无法理解。我觉得答案可能很明显。
我想要做的是以下几点:
我有一个索引控制器,其中列出了我可以使用 Ransack 搜索的一系列作业。每个作业都有一个完成日期,其中有一个日期或为空(未完成)。目前,搜索本身效果很好。我想让它加载索引页面只显示未完成的工作,但我也希望它能够工作,以便当有人运行搜索时,返回已完成和未完成工作的结果。
任何帮助将不胜感激。在下面的代码中,:actual
是带有完成日期的字段的名称。我也在网上四处寻找,并认为可能像DEFAULT_SEARCH_PARAMETER={}
我在 Job 模型中拥有的东西可能会起作用,但我似乎无法做到。这是代码:
ruby-on-rails - 使用 Ransack 搜索多个字段
我正在使用 Ransack 允许对我的用户进行高级搜索。目前,用户有first_name
、middle_name
和last_name
列。这是我的代码:
我怎样才能有一个名为“名称”的自定义项,让用户搜索上述所有三个列?
请注意 ,我仍然希望将其余属性也保留为选项,例如电子邮件、电话号码等。在确定答案时请记住这一点。
ruby-on-rails - ransack 搜索 text_field 中的每个单词
我将在我的 Rails 应用程序中按名字和姓氏搜索用户。在 firstname 的一个 text_field 和 lastname 的一个 text_field 中,应用程序用户应该可以搜索姓名的多个部分。
例如,用户将输入“Thomas Jeffrey”,这将导致:
如果我使用 firstname_cont,结果如下所示:
当我尝试 firstname_cont_all 时,我得到了一些不同的东西。
谢谢你的任何提示。
ruby-on-rails - 基于条件的值
我在我的 Rails 应用程序中使用 Ransack gem,效果很好。我当前的问题是验证。这本质上是一个两部分的问题。
如何根据条件向值字段添加验证。IE 如果 Year 是选定属性,如何将值文本框更改为带有年份列表的选择框?
还有自定义的东西,例如,如果条件设置为“国会区”,我需要能够检查该值是否只有 3 个字符长,前两个是州缩写。
ruby-on-rails - Rails - Ransack - 重新排序属性
我在我的 Rails 应用程序中使用 Ransack gem。它按预期工作,但是如何在属性选择的下拉框中重新排序属性列表?对我来说不幸的是,用户的“姓名”在列表的底部附近,而理想情况下它会在顶部。
以上是我当前的属性选择,现在它列出了所有用户属性,然后是每个关联的属性。在我的模型中,我使用以下内容过滤掉一些属性。
ruby - 如何设置洗劫排序的默认值?
简而言之,我只想知道是否有办法使用 Ransack gem 为排序功能设置默认值?IE。
目前,页面加载时我有以下内容:
但相反,我希望在页面加载时具有以下默认值:
是否可以通过正确配置 Ransack Gem 来做到这一点?
一如既往地提前感谢!
最好的祝福!
sql - Rails,Ransack:如何在 HABTM 关系中搜索“所有”匹配项而不是“任何”匹配项
我想知道是否有人有使用 Ransack 与 HABTM 关系的经验。我的应用程序photos
与之有 habtm 关系terms
(术语就像标签)。这是对我所经历的事情的简化解释:
我有两张照片:照片 1 和照片 2。它们具有以下术语:
照片1:A、B、C
照片 2:A、B、D
我构建了一个搜索表单,并在搜索表单中为所有术语添加了复选框,如下所示:
如果我使用:q[terms_id_in][]
并且我检查“A,C”,我的结果是照片 1 和照片 2。我只想要照片 1,因为我要求 A 和 C,在这个查询中我不关心 B 或 D,但我想要A 和 C 都出现在给定的结果中。
如果我使用q[terms_id_in_all][]
我的结果为零,因为两张照片都只包含 A 和 C。或者,也许因为每次连接只有一个术语,所以没有连接匹配 A 和 C。无论如何,我只想返回照片 1。
如果我使用任何品种,q[terms_id_eq][]
我永远不会得到任何结果,所以我认为这在这种情况下不起作用。
那么,给定一个 habtm 连接,您如何搜索与给定值匹配的模型,同时忽略未给定的值?
或者,对于任何不熟悉 Ransack 的 rails/sql 专家,您还可以如何创建一个搜索表单,就像我为具有 habtm 连接的模型所描述的那样?
更新:根据相关问题的答案,我现在已经构建了一个正确匹配的 Arel 查询。不知何故,您应该能够将 Arel 节点用作洗劫者,或者正如 cdesrosiers 指出的那样,用作自定义谓词,但到目前为止,我还没有做到这一点。
根据该答案,我设置了以下 ransack 初始化程序:
...然后在照片上设置以下方法:
不幸的是,这似乎不起作用。虽然terms_subquery
产生了正确的 SQL,但结果Photo.search(:has_terms => [2,5]).result.to_sql
只是"SELECT \"photos\".* FROM \"photos\" "
ruby-on-rails-3 - 洗劫宝石铁轨 3
我一直在使用 gem ransack。我已经在我的 gemfile 中放置了 ransack,然后运行 bundle install (虽然我只使用了 bundle,但这有什么不同吗?我认为没有?)
接下来我把它放在我的食谱控制器中
在我看来(all_recipes)我有搜索表单和块来显示我的结果
我有两个问题,甚至没有进行搜索我在我看来这个块在哪里
然后,如果我搜索说 las,它会在获取请求后将我重定向到我的索引页面,但由于我没有阻止显示结果,我得到一个未定义的错误,这是预期的。
在此之后,我将我的控制器代码放在索引操作中,并将表单和块放在索引视图中,现在一切正常了吗?为什么我不能使用 all_recipes 操作,为什么它会重定向?