【问题标题】:Rails acts as taggle on filter by multiple tagsRails 在多个标签的过滤器上充当标签
【发布时间】:2012-11-29 16:12:13
【问题描述】:

我有一个模型,Tasks,它可以在 gem 上标记为可标记的行为。

路线: 获取 'mainpage/:tag', to: 'mainpage#index', as: :tag

现在,当您单击一个标签时,它会将您带到带有该标签的所有任务。

我想做的是,一旦您在标签页面上,单击其他标签会进一步过滤带有单击标签名称的结果。

例如

标签账单页面(主页/账单)显示:

电缆(标记:电视、信用卡、账单)

椅子(标记:信用卡、账单)

桌子(标记:家具、账单、沙拉)

当我在账单标签页面上点击“信用卡”标签时,我希望它只显示那些既是账单标签又是信用卡标签的任务。

我对如何做到这一点有点盲目。

感谢您的帮助或建议

【问题讨论】:

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


    【解决方案1】:

    来自http://guides.rubyonrails.org/routing.html 3.11 节:

    get 'mainpage/*tags, to: 'mainpage#index', as: :tag
    

    添加此路由可让您拥有像 /mainpage/bills/mainpage/bills/tv/furniture 这样的 URL。

    第一个 URL 将以 params[:tags] == 'bills' 进入您的 mainpage#index 方法,而第二个 URL 将以 params[:tags] == 'bills/tv/furniture' 进入。然后,您可以简单地将params[:tags] 拆分为/

    注意,出于 seo 的目的,您可能希望为 URL 提供一些命名法,即标签在 URL 中始终按字母顺序排列。

    【讨论】:

    • 谢谢杰森-这正是我想要的。实际上,我自己找到了另一种方法,但更喜欢你的方法。我将使用我想出的方法编辑我的问题,以防万一它在任何时候对其他人有所帮助
    猜你喜欢
    • 1970-01-01
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-26
    • 1970-01-01
    • 1970-01-01
    • 2017-05-28
    相关资源
    最近更新 更多