【发布时间】:2012-07-04 07:34:11
【问题描述】:
我有关系,比如用户有很多文章,文章属于用户。
因此,为了查找用户的文章(处于活动状态),我在文章模型中添加了 named_scope
named_scope :active_articles, :conditions => "active = true"
什么时候做-
user.articles.active_articles
它按预期正确给出,但在控制台查询中有重复条件-
SELECT * FROM `articles` WHERE (`articles`.user_id = 52) AND ((active = true) AND (`articles`.user_id = 52))
如何限制条件的重复?
或
如何为关联添加条件?
我正在使用 rails 2.3.5。提前致谢。
【问题讨论】:
-
我的 0.02 美元:相信查询优化器,不用担心。如果您使用的是 PostgreSQL 之类的数据库,您可以进行“分析”并查看这两个查询将完全相同(我预测)。
标签: ruby-on-rails activerecord named-scope