I'm receiving a error when i try to paginate one query. This is my query:
async show({ request }){
const { page, pageSize } = request.get();
const filter = request.input('filter')
const questions = await Database
.select('book_unit_question.*')
.select('book_unit.unit')
.select('books.id as book_id')
.from('book_unit_question')
.innerJoin('book_unit', 'book_unit.id', 'book_unit_question.book_unit_id')
.innerJoin('books', 'books.id', 'book_unit.book_id')
.where('books.id', '=', request.params.id)
if(filter){
if (filter.search('unit') !== -1) {
let unit = filter.match(/(?<=unit~contains~').?(?=')/)
questions.where('book_unit.unit', '=', unit[0])
}
}
//Filtros
if (filter) {
if (filter.search("description") !== -1) {
let description = filter.match(/(?<=description~contains~').*?(?=')/)
questions.where('description', 'ilike', '%' + description[0] + '%')
}
}
const question = await questions.paginate(page, pageSize)
return question
}
But i'm getting:
{message: "questions.paginate is not a function"
i also tried questions.forPage(page,pageSize) but i get the same error
remove await before Database . like this
const questions =Database.from('book_unit_question')
.select('book_unit_question.*')
.select('book_unit.unit')
.select('books.id as book_id')
.innerJoin('book_unit', 'book_unit.id', 'book_unit_question.book_unit_id')
.innerJoin('books', 'books.id', 'book_unit.book_id')
.where('books.id', '=', request.params.id)
if(filter){
if (filter.search('unit') !== -1) {
let unit = filter.match(/(?<=unit~contains~').?(?=')/)
questions.where('book_unit.unit', '=', unit[0])
}
}
//Filtros
if (filter) {
if (filter.search("description") !== -1) {
let description = filter.match(/(?<=description~contains~').*?(?=')/)
questions.where('description', 'ilike', '%' + description[0] + '%')
}
}
const question = await questions.paginate(page, pageSize)
return question
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.