Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Learn MongoDB 4.x

You're reading from   Learn MongoDB 4.x A guide to understanding MongoDB development and administration for NoSQL developers

Arrow left icon
Product type Paperback
Published in Sep 2020
Publisher Packt
ISBN-13 9781789619386
Length 610 pages
Edition 1st Edition
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
Doug Bierer Doug Bierer
Author Profile Icon Doug Bierer
Doug Bierer
Arrow right icon
View More author details
Toc

Table of Contents (22) Chapters Close

Preface 1. Section 1: Essentials
2. Introducing MongoDB 4.x FREE CHAPTER 3. Setting Up MongoDB 4.x 4. Essential MongoDB Administration Techniques 5. Section 2: Building a Database-Driven Web Application
6. Fundamentals of Database Design 7. Mission-Critical MongoDB Database Tasks 8. Using AJAX and REST to Build a Database-Driven Website 9. Section 3: Digging Deeper
10. Advanced MongoDB Database Design 11. Using Documents with Embedded Lists and Objects 12. Handling Complex Queries in MongoDB 13. Section 4: Replication, Sharding, and Security in a Financial Environment
14. Working with Complex Documents Across Collections 15. Administering MongoDB Security 16. Developing in a Secured Environment 17. Deploying a Replica Set 18. Replica Set Runtime Management and Development 19. Deploying a Sharded Cluster 20. Sharded Cluster Management and Development 21. Other Books You May Enjoy

Adding pagination to the responder class

The next step is to add a method to the web.responder.html.Html class that accepts the output produced by fetchPaginatedByCustKey() and returns HTML. We also need to accept the current page number and a base URL to create links to the previous and next pages. Note that if the previous page number drops below 0, we simply reset it to 0.

The method might appear as follows:

    # web.responder.html.Html
def buildPurchaseHistory(self, purchHist, pageNum, baseUrl) :
import locale
nextPage = pageNum + 1
prevPage = pageNum - 1
if prevPage < 0 : prevPage = 0
We do not define an upper limit for the pagination in this illustration, so the link for the next page might go past the end of the query result. In our example, in this case, a page with no results is displayed. If an upper limit is needed, create a domain service method that returns the value of pymongo.collection.count_documents(). You could then multiply the...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image