Reputation: 7684
How to do search query in rails. My params
is
"search"=>{"id"=>"1", "name"=>"selva", "item_id"=>""}
and what I have tried
User.where("id = ? AND name = ? AND item_id = ?", params["search"]["id"],params["search"]["name"],params["search"]["item_id"])
Here problem is when params
comes empty, then it trough error. So can you suggest me what is best way to search and how people are searching form.
Upvotes: 1
Views: 127
Reputation: 1964
Something Like that
users = User
if params['search']
search_data = params['search']
users = users.where(:id => search_data['id']) if search_data['id']
users = users.where(:name => search_data['name']) if search_data['name']
users = users.where(:item_id => search_data['item_id']) if search_data['item_id']
end
users = users.all
Upvotes: 3