在Rails 3中,数据库行为被分解成不同的混合模块。这样,某些东西可以进行验证而无需继承ActiveRecord::Base。ActiveRecord::Base类引入了执行数据库操作所需的所有混合模块。此外,关系实际上不是记录或记录集。它可以保持查询的基础形式,因此可以链接到链中,直到链中的某个内容返回记录或记录集。因此,where方法返回一个Relation对象。该对象可以调用where以返回具有查询中另一个过滤器的另一个Relation对象。等等,直到调用all、first、count或其他方法来使返回的对象成为查询结果。
base
。 - willglynn