簡體   English   中英

帶有復選框的searchlogic

[英]searchlogic with checkboxes

我正在使用searchlogic對我的結果集執行搜索。

下面是我的搜索表,其中包含復選框。

<% form_for @search do |f| %>
  <div class="searchbox" style="text-align: left; width: 100%">

    <span> Status: </span>

    Incomplete - <%=   f.check_box :sub_status_fk_equals_any, {:name => "search[sub_status_fk_equals_any][]"}, "51" %> 
    Complete - <%=   f.check_box :sub_status_fk_equals_any, {:name => "search[sub_status_fk_equals_any][]"}, "52" %> 
    Under Review - <%=   f.check_box :sub_status_fk_equals_any, {:name => "search[sub_status_fk_equals_any][]"}, "53" %> 
    Approved - <%=   f.check_box :sub_status_fk_equals_any, {:name => "search[sub_status_fk_equals_any][]"}, "54" %> 

    <%= f.submit "Submit"%>
  </div>
<% end %>

只要選中復選框,以上代碼就可以正常工作,但是如果所有復選框均為空,則不返回所有行,而不返回任何行。

在我的地址欄中,顯示以下參數:

http://localhost/sub_test/?
search[order]=descend_by_sub_entry_date&
search[sub_status_fk_equals_any][]=0&
search[sub_status_fk_equals_any][]=0&
search[sub_status_fk_equals_any][]=0&
search[sub_status_fk_equals_any][]=0&
commit.x=15&commit.y=18&commit=Search

如果未選中任何復選框,則傳遞0。

如果未選擇任何內容,如何返回所有行?

好的,找到解決方案。 您需要為unchecked_value傳遞“ nil”

Incomplete - <%=   f.check_box :sub_status_fk_equals_any, {:name => 
      "search[sub_status_fk_equals_any][]"}, "51", nil %> 

        Complete - <%=   f.check_box :sub_status_fk_equals_any, {:name => "search[sub_status_fk_equals_any][]"}, "52", nil %> 

        Under Review - <%=   f.check_box :sub_status_fk_equals_any, {:name => "search[sub_status_fk_equals_any][]"}, "53", nil %> 

        Approved - <%=   f.check_box :sub_status_fk_equals_any, {:name => "search[sub_status_fk_equals_any][]"}, "54", nil %> 

希望這可以對其他人有所幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM