【发布时间】:2018-01-12 06:48:18
【问题描述】:
我正在使用 Rails 4.2.5、Ruby 2.2、ransack。 我正在尝试使用 Ransack 实现搜索功能。我有类似的东西:
emails = ["abc@abc.com", "a@a.com", "b@b.com"]
users_list = emails.map{|a| User.where(email: a).first}
checked_in_users = Kaminari.paginate_array(users_list)
这为我提供了页面中正确的用户列表。但是如果我想通过电子邮件搜索,我该怎么办?
@q = checked_in_users.ransack params[:q]
这给了我:
"NoMethodError (undefined method `ransack' for #<Array"
HAML 代码:
= search_form_for [@q], url: users_path(some_id: id) do |form|
= form.text_field :user_name_or_user_email_cont, placeholder: 'Name or email', class: 'form-control'
使用 ransack 的正确方法是什么?
【问题讨论】: