Я получил эту ошибку, когда попытался выполнить поиск ...
это мой menu_controller.rb
before_action :set_cats
def index
@page = 'menu'
@products = Product.all
end
def search
query = params[:search]
results = Product.where('name LIKE ?', "%#{query}%")
if params[:filter] == 'Select Filter'
@products = results
else
# 'Dairy Free' -> 'Dairy_Free' -> 'dairy_free' -> :dairy_free
symbol = params[:filter].gsub(/ /, '_').downcase!.to_sym
# @products = results.where(:dairy_free => true)
@products = results.where(symbol => true)
end
end
private
def set_cats
@cats = Category.all.where(display: true)
end
и это мой поиск. html .erb
$("#menu-products-container").html("<%= j render 'menu/products' %>");
, а это мой индекс. html .erb
<div class="menu-container">
<div class="row">
<div class="col-12">
<%= form_tag(search_path, method: "get", remote: true) do %>
<div class="input-group mb-5">
<div class="col-8" style="padding:0">
<%= text_field_tag :search, '', class:'form-control', placeholder: 'Search...', onkeydown:'clickSubmit();'%>
</div>
<div class="col-4" style="padding:0">
<%= select_tag "filter", options_for_select(['Select Filter',
'Dairy Free',
'Gluten Free',
'Kosher',
'Peanut Free',
'Vegan',
'Vegetarian']), class:'custom-select', onchange:'clickSubmit()'%>
<%= submit_tag "Search", class:'btn btn-dark', id:'search_submit', style:'display:none'%>
</div>
</div>
<% end %>
</div>
</div>
<div id="menu-products-container">
<%= render 'menu/products'%>
</div>
</div>
<script>
function clickSubmit() {
$("#search_submit").trigger("click");
}
</script>
Я узнал об этом на YouTube, и у человека возникла такая же ошибка на своем видео, и он изменил индекс. html .erb
сначала у него был этот код
<%= text_field_tag :search, '', class:'form-control', placeholder: 'Search...', onkeydown:'this.form.submit();'%>
и он изменился на
<%= text_field_tag :search, '', class:'form-control', placeholder: 'Search...', onkeydown:'clickSubmit();'%>
, который у меня есть сейчас, потому что я слежу за ним ... но У меня все еще эта ошибка ... может кто-нибудь помочь?