Tag: ransack

在应用程序中使用自动填充function进行搜索

美好的一天。 我讨厌使用ransack按照标题查找文章的控制器。 我需要用于查找信息以使用自动完成的字段。 目前它找到了,但没有自动完成,你可以帮我解决这个问题和gemhttps://github.com/crowdint/rails3-jquery-autocomplete-app ? 的Gemfile gem “ransack” gem ‘rails3-jquery-autocomplete’ gem ‘nifty-generators’ gem ‘jquery-rails’, ‘~> 2.0’ 在视图中: 15 %> ‘Search’, :class=>’fl_right’ %> 布局负责人: “all” %> 调节器 class ArticlesController < ApplicationController autocomplete :article, :title 更新1和routes.rb get ‘articles/autocomplete_article_title’ 在视图中更新2 ,代替<%= f.autocomplete_field :title_cont,使用1):title_start没有更改2):articles_article_title_start等导致错误。 更新3我编辑了routes.rb。 将’articles / autocomplete_article_title’移到了locale变量的范围内, 现在它有点工作了。 ..自动完成下拉列表出现…但是空:(现在必须修复那个。 更新4尝试使用http://railscasts.com/episodes/102-auto-complete-association 。 但它适用于较旧版本的rails ……等等 更新了routes.rb中的更新5 resources :articles do get […]

使用Ransack对父级父级的属性进行排序

我知道如何使用Ransack对于父属性的令人敬畏的sort_link方法,但是当我将相同的逻辑外推到祖父母的属性时,它不起作用(我可以点击链接,不进行排序)。 层次结构如下: Signup has_many Request has_many Transaction 。 我正在从Transaction透视图中搜索。 控制器代码: def index @q = Transaction.ransack(params[:q]) @transactions = @q.result.includes(:request => :signup) end 查看代码: 顺便提一下,搜索代码(例如:request_returndate_eq )很好,它只是排序不起作用。 型号代码: class Signup < ActiveRecord::Base has_many :requests end class Request < ActiveRecord::Base belongs_to :signup has_many :transactions, dependent: :destroy end class Transaction < ActiveRecord::Base belongs_to :request end 控制台输出 在第一次单击以升序排序(尽管任何单击它总是产生200响应,即使视图实际上没有更改) Started GET “/admin/transactions?q%5Bs%5D=requests.signups.email+asc” […]

Ransack存储在db中的搜索字符串数组

我正在尝试使用ransack搜索文章。 在我的一个问题是如何根据标签获取文章,我发现了如何做到这一点: 找到数组的文章 现在我只想用搜索进行搜索,但是我收到了一个错误 我喜欢这个 执行此搜索xbox时出现的错误如下: PG::InvalidTextRepresentation: ERROR: array value must start with “{” or dimension information LINE 1: …es”.* FROM “articles” WHERE “articles”.”tags” IN (‘xbox’) O… inheritance人控制器: def index @q = Article.ransack(params[:q]) @articles = @q.result.paginate(page: params[:page], :per_page => 10).order(‘created_at DESC’) end 如何使用标签搜索文章? 谢谢!

没有Ransack :: Search对象已提供给search_form_for

我意识到其他人已经问过这个错误,但这与其他情况有关。 我已经为rails 4添加了Ransack gem,并且已经安装了捆绑: gem “ransack”, github: “activerecord-hackery/ransack”, branch: “rails-4” 我还编辑了我的控制器如下(recipes_controller): def index if params[:tag] @all_recipes = Recipe.tagged_with(params[:tag]) else @all_recipes = Recipe.all end if signed_in? @user_recipes = current_user.recipes.order(“created_at DESC”).paginate(page: params[:page], :per_page => 10) end if params[:q] @q = Recipe.search(params[:q]) @all_recipes = @q.result(distinct: true) end end 然后我在表单中添加如下(食谱/索引): 我收到以下错误 : No Ransack::Search object was provided to search_form_for! […]

Rails&Ransack – 根据模型中的定义进行排序/搜索

比方说,我有一个带有start_date和length的事件(表示天数的整数)。 在模型中,我将end_date定义为start_date + length.days就像您期望的那样: def end_date start_date + length.days end 所有在模板中工作正常,我可以使用event.end_date显示开始日期加上长度设置为多天, 但是 ,我现在想要使用Ransack在结束日期之前对事件进行排序。 start_date的排序链接如下所示: 如果我为end_date( )尝试相同的操作,它很遗憾地失败,因为我认为它正在寻找end_date作为表中的列而没有找到它。 我只是愚蠢,还是我想做一些Ransack根本不做的事情?

将局部变量传递给Rails 4中用于Ransack关联的部分层次结构

我正在尝试使用Ransack在我的所有模型的索引页面上实现搜索和排序表单。 我想尽可能干这样做,所以我在views / application文件夹中创建了三个部分: 视图/应用/ _table_search_and_sort_form.html.erb 视图/应用/ _condition_fields.html.erb 视图/应用/ _sort_fields.html.erb 每个代码如下: 视图/应用/ _table_search_and_sort_form.html.erb 视图/应用/ _condition_fields.html.erb <div class="field" data-object-name="”> 视图/应用/ _sort_fields.html.erb <div class="field" data-object-name="”> 在我的每个控制器中,我都有类似的东西: def index @search = Document.search(params[:q]) @documents = @search.result.paginate(:page => params[:page]) @search.build_condition if @search.conditions.empty? @search.build_sort if @search.sorts.empty? end 然后我通过添加以下内容将表单添加到每个index.html.erb: 其中:associations数组对于每个模型是不同的,这取决于我希望可以从条件表单访问的关联。 当我不尝试通过两个部分向下传递:associations数组时,只需将数组硬编码到_condition_fields.html.erb中,例如: 一切正常(对于那个模型,在这种情况下为Document)。 当我尝试通过将:associations数组从索引传递到_table_search_and_sort_form并将其传递到_conditional_form来将其扩展到多个模型时,我收到以下错误: undefined local variable or method `associations’ Extracted source (around […]

对存储在数组中的数据进行Ransack搜索(运算符不存在:整数 =整数)

我有一个Rails模型调用InfoData,它有一个名为error_codes的属性。 代码存储在类似[9,7,10,21](整数[])的数组中。 回顾一下 InfoData.first.error_codes => [9,7,5] 我尝试在其上使用ransack以搜索是否存在特定代码(通过选择选项)。 对于error_codes_in(_in ransack谓词),我收到以下错误 operator does not exist: integer[] = integer LINE 1: …ranch_id” WHERE “info_data”.”error_codes” IN (9) A… ^ HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts. 该如何修复?

Ransack在高级表单搜索中保存搜索表单值,保存并编辑这些详细信息

我正在使用ransack gem在ruby on rails上开发一个高级搜索应用程序。 我遇到了以下问题 如何保存表单搜索值并保存这些详细信息以供以后查询 通过采用现有查询生成表单来编辑保存的查询 删除查询 请帮我找到解决方案。

如何设置ransack排序的默认值?

简单来说,我只想知道是否有办法使用Ransack gem设置排序function的默认值? 即。 目前,我在页面加载时有以下内容: 但相反,我希望在页面加载时具有以下默认值 : 是否可以通过正确配置Ransack Gem来实现这一目标? 一如既往地感谢! 最好的祝福!

如何通过ransack gem搜索数组?

我正在使用ransack gem在rails应用程序中进行搜索。 我需要在User表中搜索email_ids数组。 在洗劫时提到这个问题,我按照步骤将其添加到初始化文件夹ransack.rb Ransack.configure do |config| { contained_within_array: :contained_within, contained_within_or_equals_array: :contained_within_or_equals, contains_array: :contains, contains_or_equals_array: :contains_or_equals, overlap_array: :overlap }.each do |rp, ap| config.add_predicate rp, arel_predicate: ap, wants_array: true end end 在rails控制台中,如果我喜欢这样: a = User.search(email_contains_array: [‘priti@gmail.com’]) 它产生这样的sql: “SELECT \”users\”.* FROM \”users\” WHERE \”users\”.\”deleted_at\” IS NULL AND (\”users\”.\”email\” >> ‘—\n- priti@gmail.com\n’)” 并给出如下错误: User Load (1.8ms) SELECT “users”.* […]