findOne()
如果 实体服务 findOne 无法满足您的使用情况,则仅使用查询引擎的 findOne。
查找与参数匹配的第一个条目。
语法:findOne(parameters) ⇒ Entry
Parameters
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
where | WhereParameter | Filters to use |
offset | Integer | Number of entries to skip |
orderBy | OrderByParameter | Order definition |
populate | PopulateParameter | Relations to populate |
Example
js
const entry = await strapi.db.query('api::blog.article').findOne({
select: ['title', 'description'],
where: { title: 'Hello World' },
populate: { category: true },
})
findMany()
如果 实体服务 findMany 无法满足您的使用情况,则仅使用查询引擎的 findMany。
查找与参数匹配的条目。
语法:findMany(parameters) ⇒ Entry[]
Parameters
参数 | 类型 | 说明 |
---|---|---|
select | 字符串或字符串数组 | 要返回的 属性 |
where | WhereParameter | 要使用的 过滤器 |
limit | 整数 | 要返回的条目数 |
offset | 整数 | 要跳过的条目数 |
orderBy | OrderByParameter | Order 定义 |
populate | PopulateParameter | 与 populate 的关系 |
Example
js
const entries = await strapi.db.query('api::blog.article').findMany({
select: ['title', 'description'],
where: { title: 'Hello World' },
orderBy: { publishedAt: 'DESC' },
populate: { category: true },
})
findWithCount()
查找并计算与参数匹配的条目数。
语法:findWithCount(parameters) => [Entry[], number]
Parameters
Parameter | Type | Description |
---|---|---|
select | String, or Array of strings | Attributes to return |
where | WhereParameter | Filters to use |
limit | Integer | Number of entries to return |
offset | Integer | Number of entries to skip |
orderBy | OrderByParameter | Order definition |
populate | PopulateParameter | Relations to populate |
Example
js
const [entries, count] = await strapi.db.query('api::blog.article').findWithCount({
select: ['title', 'description'],
where: { title: 'Hello World' },
orderBy: { title: 'DESC' },
populate: { category: true },
})
create()
如果 Entity Service create 无法满足您的使用情况,则仅使用查询引擎的创建。
创建一个条目并返回它。
语法:create(parameters) => Entry
Parameters
参数 | 类型 | 说明 |
---|---|---|
select | 字符串或字符串数组 | 要返回的 属性 |
populate | PopulateParameter | 与 populate 的关系 |
data | 对象 | 输入数据 |
Example
js
const entry = await strapi.db.query('api::blog.article').create({
data: {
title: 'My Article',
},
})
在 data
对象中,可以使用 REST API 中描述的语法,通过 connect
、disconnect
和 set
参数来管理关系(参见 管理关系)。
update()
仅当 实体服务更新 无法满足您的使用情况时,才使用查询引擎的更新。
更新一个条目并返回它。
语法:update(parameters) => Entry
Parameters
参数 | 类型 | 说明 |
---|---|---|
select | 字符串或字符串数组 | 要返回的 属性 |
populate | PopulateParameter | 与 populate 的关系 |
where | WhereParameter | 要使用的 过滤器 |
data | 对象 | 输入数据 |
Example
js
const entry = await strapi.db.query('api::blog.article').update({
where: { id: 1 },
data: {
title: 'xxx',
},
})
delete()
如果 Entity Service delete 无法满足您的使用情况,则仅使用查询引擎的删除。
删除一个条目并返回它。
语法:delete(parameters) => Entry
Parameters
参数 | 类型 | 说明 |
---|---|---|
select | 字符串或字符串数组 | 要返回的 属性 |
populate | PopulateParameter | 与 populate 的关系 |
where | WhereParameter | 要使用的 过滤器 |
Example
js
const entry = await strapi.db.query('api::blog.article').delete({
where: { id: 1 },
})