【问题标题】:Rails / ActiveRecord: how to get all articles whose tags are included in current article tags?Rails / ActiveRecord:如何获取标签包含在当前文章标签中的所有文章?
【发布时间】:2016-11-24 10:17:34
【问题描述】:

这是一个令人头疼的问题!

我正在尝试获取其类别包含在当前文章类别中的所有文章。

到目前为止我所拥有的,这当然是错误的:

@rq = Article.includes(:tags).where(tags: { name: @article.tags.first.name })

ArticleTag 之间有一个连接表设置(has_and_belongs_to 标签和 has_and_belongs_to 文章)。基本上我可以用@article.tags访问当前文章的所有标签,用@tag.articles访问当前标签的所有文章。

【问题讨论】:

  • 请显示这两个模型的数据库架构
  • @Fallenhero 添加了有关数据库设计的更多信息。他们之间有一个连接表设置。
  • 所以你有一个 has_and_belongs_to_many 关系?
  • 是的。那是对的。已添加到问题中。

标签: ruby-on-rails ruby-on-rails-4 activerecord rails-activerecord


【解决方案1】:

应该很简单,比如:

@rq = Article.joins(:tags).where(tags: {id: @article.tag_ids})

如果我正确理解了您的要求。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-04
    • 1970-01-01
    • 2014-08-16
    相关资源
    最近更新 更多