我正在运行Ruby on Rails 3.1。我正在查询数据库,以便检索与用户具有不类别关系的文章对象,我正在尝试改进以下代码:
article_relationship_ids =
User.article_category_relationships
.uniq_by{|article_category_relationship| article_category_relationship.article_id}
.map(&:article_id)
user.articles.where("articles.id NOT IN (?)", article_relationship_ids)
如何改进上述代码?
P.S。:我的“检索方法”在逻辑上是否正确,是否符合我的要求?
答案 0 :(得分:1)
这应该在红宝石方面没有进一步处理的情况下获取你的ID:
article_relationship_ids =
User.article_category_relationships.select(:article_id).uniq