我正在使用非常有用的has_scope gem。我有一个通过在链接中传递范围创建的索引页面。
<%= user_collections_path(@user, got: true) %>
在那个索引页面上,我可以查询 current_scopes。
我在该页面上有一个非常标准的 ransack 搜索表单,但使用它会返回没有任何范围的结果。
如何将 current_scopes 传递给搜索?我尝试使用隐藏字段,但无法正常工作。我想如果我可以通过链接传递范围,我应该能够以一种形式传递它们,但是在谷歌搜索之后我不确定这是真的。
搜索表格
<%= search_form_for @search, :html => {:method => :post} do |f| %>
<%= f.text_field :name_or_miniature_name_cont, class: "span3" %>
<%= f.submit "Search", class: "btn" %>
<% end %>
指数法
def index
@user = User.find_by_username(params[:user_id])
@search = apply_scopes(@user.collections).search(params[:q])
@search.sorts = 'created_at desc' if @search.sorts.empty?
@collections = @search.result.paginate(page: params[:page])
end