考虑到ActiveRecord的以下finder
方法.
> .take.例. Account.take
> .limit(1)示例. Account.limit(1)
现在,
这两种方法虽然具有不同的名称,但它们生成相同的查询:
SELECT "accounts".* FROM "accounts" LIMIT 1
那么,take& amp; .limit(1)?或者他们是一样的?
从
docs
# File activerecord/lib/active_record/relation/finder_methods.rb,line 64
def take(limit = nil)
limit ? limit(limit).to_a : find_take
end
take返回一个记录数组,而limit返回一个可以与其他关系链接的ActiveRecord关系.