【问题标题】:Search form with acts_as_taggable_on (Rails 3)使用acts_as_taggable_on 搜索表单(Rails 3)
【发布时间】:2011-07-02 17:14:46
【问题描述】:

我有一个搜索框来搜索产品。每个产品都有一个标题,并带有多个标签。

我希望能够按标题或标签搜索产品。换句话说,如果我有一个名为“绿茶”的产品和另一个标记为“绿色、红色、蓝色”的产品,并且我在搜索框中输入“绿色”,我希望这两种产品都出现在搜索结果中。

我正在使用 Rails 3,acts_as_taggable_on,Ruby 1.9.2。

【问题讨论】:

    标签: ruby-on-rails search acts-as-taggable-on


    【解决方案1】:

    在您的控制器中,显示搜索结果的操作可能如下所示(其中 :q 是您在搜索框中的查询字符串):

    def results
      @products = Product.where("title LIKE ?", "%#{params[:q]}%") \
        | Product.tagged_with("%#{params[:q]}%")
    end
    

    【讨论】:

    • 我不懂这个语法...你需要 gem 什么的吗?
    • 唯一依赖的 gem 是“作为可标记的”,上面的查询使用“tagged_with”方法。除此之外,Jamie 正在演示如何使用 Postgres 的内置通配符功能!杰米爵士为您 +1 互联网
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多