【发布时间】:2010-12-19 15:56:41
【问题描述】:
我想为我的 Web 应用程序创建一个导航系统,其中有几个主要类别的文章和几个子标签。
例如,在“写作”类别中,可能有“散文”、“诗歌”和“小说”等子类别。
每篇文章都有一个标签列表。如果有人点击小说类别显示页面上的标签“意大利”,我不希望其他类别(如散文或诗歌)中具有相同标签“意大利”的文章出现在该页面上。
当点击标签时,显示页面将是一个类别显示页面,其中包含该类别中具有该特定标签的所有文章的标签过滤器。它不会是一个标签显示页面。
另外,我想要一个带有相关标签的侧边栏。这些标签将与分类显示页面上按降序显示的相同文章中的标签。我在标签页面本身上获得了相关标签,但不受类别约束。
到目前为止,我可以让类别页面和标签页面分开工作,但我想将两者结合起来。
我目前使用 Acts as Taggable on Steroids 作为标签和 Acts as Tree 作为类别。
有什么想法吗?
【问题讨论】:
-
我不确定,但您可以尝试创建一个 Tag 模型并将其设置为 belongs_to :category。您需要将 category_id 添加到您的标签表中。然后你可以做 some_category.tags 和 Article.find_tagged_with(some_category.tags) (或类似的——我不确定如何使用 AaToS)。您还可以查看 mbleigh 的 ActsAsTaggableOn fork:github.com/mbleigh/acts-as-taggable-on 它具有一些内置的相关标签功能。
标签: ruby-on-rails navigation tags categories