在Adonis中,可以使用以下方法来根据条件构建查询:
const users = await Database
.from('users')
.when(searchTerm, (query, searchTerm) => {
query.where('username', 'like', `%${searchTerm}%`)
.orWhere('email', 'like', `%${searchTerm}%`)
})
这里的 when()
方法接受两个参数:第一个参数是条件,第二个参数是回调函数,该函数接受两个参数,第一个是查询构建器,第二个是条件值。如果条件为真,则执行回调函数中的查询构建器方法。
例如,上面的代码根据 searchTerm
条件构建了一个查询,如果 searchTerm
存在,则查询用户名或电子邮件包含该搜索词的用户。
使用这种方法可以方便地根据条件构建查询。