【问题标题】:paginate is not a function in adonis / node.jspaginate 不是 adonis / node.js 中的函数
【发布时间】:2019-11-19 18:22:55
【问题描述】:

我在尝试对一个查询进行分页时收到错误消息。这是我的查询:

    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


    }

但我得到了:

{消息:“questions.paginate 不是函数”

我也尝试过 questions.forPage(page,pageSize) 但我得到了同样的错误

【问题讨论】:

标签: node.js adonis.js


【解决方案1】:

删除 数据库 之前的 await。 像这样

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


【讨论】:

    猜你喜欢
    • 2018-11-28
    • 2017-11-02
    • 2018-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-02
    • 2018-03-19
    • 2018-10-13
    相关资源
    最近更新 更多