Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

207
Views
Cómo implementar la paginación basada en páginas

Estoy tratando de implementar la paginación basada en la página en este punto final en particular, pero el problema al que me enfrenté es que el cuerpo de la respuesta no está imprimiendo la página, el tamaño de la página y los resultados totales.

La URL es http://localhost:3006/events/tickets?sort_by=name&page=1&page_size=2

¿Cómo puedo devolver un cuerpo Json como este? Respuesta ideal que estoy tratando de lograr

 { content: [], // respponse items page: 1, // current page results_per_page: 10, // results per page total_pages: 10, // total number of pages total_results: 100 // number of all results }
 const getTickets = (tickets) => { return new Promise(async (resolve, reject) => { try { let query = `SELECT id, name, description, ticket_price, ticket_type FROM tickets`; let sort_by = tickets.sort_by; if(sort_by ?? false) { query += ` ORDER BY ${sort_by}`; if (sort_by) { query += (sort_by == 'desc' ? ` DESC` : ` ASC`); } } let limit = tickets.page_size; let replacements = { limit: limit }; if (limit) { query += ` LIMIT :limit`; replacements.limit = limit; } let offset = limit ? ((tickets.page - 1) * limit) : 0; if(offset) { query += ` OFFSET :offset `; replacements.offset = offset; }; const ticket = await db.sequelize.query( query, { replacements: replacements, type: QueryTypes.SELECT, } ); return resolve(ticket); } catch (err) { return reject(err) } }) }
 [ { "id": 1, "name": "Tennis Finals", "description": "Finals: Tennis Team 1 vs Tennis Team 2", "ticket_price": 25, "ticket_type": 1 }, { "id": 5, "name": "Testing Tickets", "description": "Description....", "ticket_price": 1000, "ticket_type": 30 } ]
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!