0

我尝试使用一个参数,现在我希望搜索表单通过 UI 使用一次搜索按钮同时适用于标题和正文。 http://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&cad=rja&ved=0CEIQtwIwAw&url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3DAB_D- G7wAsc&ei=2Fk5UoXhH8forQeDkYGAAw&usg=AFQjCNGog91uLZoTOCPLsVsxp9pZk7CpPA&bvm=bv.52288139,d.bmk

4

1 回答 1

0

您可以使用名称如下的字段

User.search(:title_or_body_cont => "Rya").result

Ransack 文档

Ransacksearch方法采用谓词和值的散列,在上面的例子中

{ :title_or_body => "雷" }

表单助手search_form_for包装输入字段,以便所有谓词作为带有名称的散列发送q(当然,您可以在配置中更改它,但最好遵守约定)。
所以像这样的形式

<% search_form_for @search do |f| %>
  <%= f.content_cont %>
  <%= f.title_or_body_cont %>
<% end %>

将返回一个:q包含哈希的参数

params[:q] ==> { :content_cont => "foo", :title_or_body_cont => "bar" }

你的控制器可以创建一个新的搜索,比如

@search = Post.search(params[:q])
@posts = @search.result

其中“bar”在titleor中交替搜索body,“foo”在 中搜索content

于 2013-09-18T07:51:51.797 回答