.find()
在您的資料庫中尋找符合指定條件的記錄。
var records = await Something.find(criteria);
參數 | 類型 | 詳細資訊 | |
---|---|---|---|
1 | criteria | 用於在資料庫中比對記錄的 Waterline 條件。 |
類型 | 描述 |
---|---|
資料庫中符合指定條件的記錄陣列。 |
名稱 | 類型 | 何時? |
---|---|---|
UsageError | 當傳入無效內容時拋出。 | |
AdapterError | 當資料庫配接器發生錯誤時拋出。 | |
Error | 當發生任何其他非預期情況時拋出。 |
請參閱 概念 > 模型與 ORM > 錯誤 以取得在 Sails 和 Waterline 中處理錯誤的範例。
在資料庫中尋找任何名為 Finn 的使用者
var usersNamedFinn = await User.find({name:'Finn'});
sails.log('Wow, there are %d users named Finn. Check it out:', usersNamedFinn.length, usersNamedFinn);
投影選擇性地省略找到的記錄中傳回的欄位。這在將找到的記錄傳遞給客戶端時,對於實現更快的效能和更高的安全性非常有用。Waterline 條件 中的 select 子句接受與屬性名稱對應的字串陣列。記錄 ID 始終會傳回。
var usersNamedFinn = await User.find({
where: {name:'Finn'},
select: ['name', 'email']
});
可能產生
[
{
id: 7392,
name: 'Finn',
email: '[email protected]'
},
{
id: 4427,
name: 'Finn',
email: '[email protected]'
}
// ...more users named Finn and their email addresses
]
- 此方法可以與
await
、promise chaining 或 傳統 Node callbacks 一起使用。