Search form with acts_as_taggable_on (Rails 3)

2019-03-03 04:45发布

I have a searchbox to search for products. Each product has a title and is tagged with multiple tags.

I want to be able to search for products by title or tag. In other words if I have a product called "Green Tea" and another product tagged "green, red, blue" and I type "green" into the searchbox, I'd like both products to appear in the search results.

I am using Rails 3, acts_as_taggable_on, Ruby 1.9.2.

1条回答
趁早两清
2楼-- · 2019-03-03 05:29

In your controller, the action that displays the search results could look something like this (where :q is your query string from the search box):

def results
  @products = Product.where("title LIKE ?", "%#{params[:q]}%") \
    | Product.tagged_with("%#{params[:q]}%")
end
查看更多
登录 后发表回答