rails - activerecord ...抓住第一个结果

Dan*_*iel 4 activerecord ruby-on-rails

我想从表中获取最新的条目.如果我只是使用sql,你可以做到

Select top 1 * from table ORDER BY EntryDate DESC
Run Code Online (Sandbox Code Playgroud)

我想知道是否有一个良好的积极记录方式来做到这一点.
我可以这样做:

table.find(:order => 'EntryDate DESC').first
Run Code Online (Sandbox Code Playgroud)

但似乎会抓取整个结果集,然后使用ruby来选择第一个结果.我希望ActiveRecord创建只带来一个结果的sql.

Ste*_*iss 9

你需要这样的东西:

Model.first(:order => 'EntryDate DESC')
Run Code Online (Sandbox Code Playgroud)

这是简写

Model.find(:first, :order => 'EntryDate DESC')
Run Code Online (Sandbox Code Playgroud)

首先查看文档并查找详细信息.