Pab*_*abi 4 activerecord datetime ruby-on-rails
我试图找到一种方法来获取最旧的 created_at 值以获取类中最旧的对象,因此我可以稍后对其进行操作。
我试图将所有项目添加到数组中,然后获取最旧的值,然后使用 .where 活动记录方法将其转换回来以获取在该日期创建的对象。
这是我到目前为止:
date_array=[]
buy_requests.each do |buy_request|
date_array << buy_request.created_at
end
date_array.min
Run Code Online (Sandbox Code Playgroud)
但我觉得有更简单的方法可以做到这一点。
我遇到的一个问题是,当我将日期添加到数组时,我不再拥有它的创建时间,因此一旦我使用 .min 获得最旧的日期,我就不能再使用 .where。
谢谢你。如果我不够清楚,请告诉我。
无需获取最早的时间戳,然后获取相应的对象,只需:
BuyRequests.order(:created_at).limit(1)
Run Code Online (Sandbox Code Playgroud)
...这将受益于 created_at 上的索引,或者......
BuyRequests.first
Run Code Online (Sandbox Code Playgroud)
...如果您的 id 以先到先得的顺序可靠地分配。
您可能希望在相等的 created_at 时间戳上打破平局:
BuyRequests.order(:created_at, :id).limit(1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5112 次 |
| 最近记录: |