Мне нужно добавить фильтр в форму поиска. Мне нужно, чтобы мой поиск мог отфильтровать место, где есть «игрушка» или «стульчик». Я немного запутался, как создать условие if else в контроллере, если пользователь добавил один из фильтров, оба или ни одного.
Places
t.string "name"
t.string "address"
t.float "latitude"
t.float "longitude"
t.bigint "user_id"
t.boolean "toy", default: false
t.boolean "high_chair", default: false
// Controller
def index
@places = policy_scope(Place)
@text_search = params[:search]
if @text_search.present?
@places = Place.global_search(params[:search]).where(type: @types).where(toy:
params[:toy].where(high_chair: params[high_chair])
else
@places = Place.all
@result = "No Result"
end
end
// View
<%= form_tag(places_path, method: :get, class: "search-form") do %>
<div class="search-input">
<%= text_field_tag :search, params[:search],
class: "search-input form-control",
placeholder: "Type your city...'"%>
<%#= check_box_tag(:toy) %>
<%#= label_tag(:toy, "Toys") %>
<%#= check_box_tag(:high_chair) %>
<%#= label_tag(:high_chair, "High Chair") %>
<%= submit_tag "?", class: "search-submit btn-search" %>
</div>
<% end %>