54 lines
1.4 KiB
Markdown
54 lines
1.4 KiB
Markdown
---
|
||
id: 587d7fb7367417b2b2512c0b
|
||
title: 使用 model.find() 查詢數據庫
|
||
challengeType: 2
|
||
forumTopicId: 301543
|
||
dashedName: use-model-find-to-search-your-database
|
||
---
|
||
|
||
# --description--
|
||
|
||
我們嘗試一種最簡單的用法,`Model.find()` 接收一個查詢 document(一個 JSON 對象)作爲第一個參數,一個回調函數作爲第二個參數, 它會返回由匹配到的數據組成的數組。 這個方法支持很多搜索選項, 詳情請參閱文檔。
|
||
|
||
# --instructions--
|
||
|
||
修改 `findPeopleByName` 函數使用 <code>Model.find() -\> [Person]</code> 查詢所有給定名字的人。
|
||
|
||
請使用函數參數中的 `personName` 作爲搜索條件。
|
||
|
||
# --hints--
|
||
|
||
應成功地找到所有符合條件的數據
|
||
|
||
```js
|
||
(getUserInput) =>
|
||
$.post(getUserInput('url') + '/_api/find-all-by-name', {
|
||
name: 'r@nd0mN4m3',
|
||
age: 24,
|
||
favoriteFoods: ['pizza']
|
||
}).then(
|
||
(data) => {
|
||
assert.isArray(data, 'the response should be an Array');
|
||
assert.equal(
|
||
data[0].name,
|
||
'r@nd0mN4m3',
|
||
'item.name is not what expected'
|
||
);
|
||
assert.equal(data[0].__v, 0, 'The item should be not previously edited');
|
||
},
|
||
(xhr) => {
|
||
throw new Error(xhr.responseText);
|
||
}
|
||
);
|
||
```
|
||
|
||
# --solutions--
|
||
|
||
```js
|
||
/**
|
||
Backend challenges don't need solutions,
|
||
because they would need to be tested against a full working project.
|
||
Please check our contributing guidelines to learn more.
|
||
*/
|
||
```
|