假設我有很多User
記錄 - 如果我打電話User.first
是保證是第一個存在於數據庫中的用戶,還是應該排序created_at
以確保排序是created_at
?請注意,我使用的是mongoid而不是ActiveRecord。Rails - .first保證是第一次創建,或者只是第一次獲取?
1
A
回答
0
User.first
返回按主鍵排序的第一個用戶(請參閱Active Record Query Guide的第1.1.3節)。
大多數情況下它將首先創建項目,但不能保證。取決於數據庫如何填充。所以你應該使用:
Client.order('created_at').first
0
首先返回查詢中的第一個對象。在您的示例中,呼叫User.first
返回User.all
數據集中的第一條記錄。雖然這將默認爲主鍵順序的第一條記錄,但如果您已經在查詢中放置了任何訂單條件(包括模型上的默認範圍),它將根據給定的順序返回第一個對象。
例如User.all.order("last_name").first
將返回第一個按字母順序排列的姓氏的記錄。或者User.all.order("updated_at DESC").first
將返回最近更新的用戶。
如果您尚未在您的查詢中設置任何排序範圍,則排序將默認爲創建記錄的順序,而不需要其他排序。有關這些功能的更多信息,請查看此rails guides entry on Active Record Query Interface。
相關問題
- 1. touchesBegan,如何獲得所有觸及,不只是第一次或最後一次?
- 2. 第一次創建JavaScript API
- 3. jquery只是第一次工作
- 4. .change事件只是第一次啓動
- 5. 動畫只是第一次作品
- 6. Foreach只是回聲第一次輸入
- 7. 第一次見證
- 8. Dxsnap不是第一次開
- 9. Zip是第一次嘗試
- 10. 爲什麼不是第一次驗證第二個驗證?
- 11. 第一次黃瓜失敗。第二次是好的
- 12. Rails ajax執行調用只是第一次
- 13. 的MPMoviePlayerController只能玩一次,第三次,第五次......等等
- 14. 只在第一次點擊
- 15. 只有演講第一次
- 16. SubView只顯示第一次
- 17. 如何只對第一次
- 18. 只在第一次點擊
- 19. Neo4j/Rails 3.2.8&Jruby 1.6.7.2:第一次構建
- 20. JavaScript的jquery代碼只是第一次工作,下次它不
- 21. 每第二次只計算一次
- 22. 第一次流浪失誤,需要第二次流浪者
- 23. jquery點擊第一次但不是第二次
- 24. 視圖第一次旋轉,但不是第二次
- 25. 函數調用第二次點擊按鈕(不是第一次)
- 26. Android:翻譯動畫第一次工作,而不是第二次
- 27. .on變更功能第一次不是第二次?
- 28. Python&Selenium/XING:find_element第一次工作,而不是第二次迭代
- 29. 如果聲明第一次有效,但不是第二次
- 30. 第二次嘗試但不是第一次的查詢