我有一个搜索表单,有两种搜索记录的方式,姓名和电子邮件。
<%= form_tag(clients_path, method: :get, class: "d-flex") do %>
<%= text_field_tag(:client_name, params[:client_name], placeholder: "Buscar por nombre", class: "form-control") %>
<%= text_field_tag(:client_email, params[:client_email], placeholder: "Buscar por email", class: "form-control") %>
<%= submit_tag ("Buscar"), class: "btn btn-primary" %>
<% end %>
在我的控制器中
if params[:client_name]
@clients = User.where(name: params[:name])
else
@clients = User.all
end
if params[:client_email]
@clients = User.where(email: params[:client_email])
else
@clients = User.all
end
这仅在搜索1个条件时有效。
我怎样才能使我的控制器代码动态化,并检查是否有任何条件成立,在我的@clients
变量中显示相应的结果?我不想膨胀我的控制器...
谢谢你!
1条答案
按热度按时间kmb7vmvb1#
我会将其更改为: