Я пытаюсь реализовать простую функцию поиска, которая вызывает множество ошибок аргумента. Здесь Мои взглядыФункция поиска неправильного числа аргументов (2 для 1)
<%= form_tag(clients_path, :method => "get", id: "search-form") do %>
<%= text_field_tag :search, params[:search], placeholder: "Search Clients" %>
<%= submit_tag "Search", :name => nil %>
<% end %>
метод в моем контроллере
def index
if current_user.admin?
if params[:search]
@clients = Client.search(params[:search], load:true).result
else
@clients = Client.all.paginate(:per_page => 3, :page => params[:page])
end
else
@clients = current_user.clients
end
end
Моя модель
def self.search(query)
where("name like ?","%#{query}%")
end
Я получаю сообщение об ошибке "неверное количество аргументов (2 на 1)". Я не вижу, какой другой аргумент передан модели. Свежая пара глаз поможет. Благодарю.
Спасибо, но теперь он вызывает другую проблему (неопределенный метод 'result 'для #). –
Bastien
Итак, удалите '.result' из' Client.search (params [: search], load: true) .result', что он должен делать? –
Я использовал его изначально, чтобы исправить ошибку с will_paginate, которая вызывала неопределенный метод total_pages. Я удалил его и удалил разбивку на страницы с помощью will_paginate и попытался найти другой способ разбиения страницы на paginate. Благодарю. – Bastien