mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			36 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from django.core.paginator import AsyncPage, AsyncPaginator, Page, Paginator
 | |
| 
 | |
| 
 | |
| class ValidAdjacentNumsPage(Page):
 | |
|     def next_page_number(self):
 | |
|         if not self.has_next():
 | |
|             return None
 | |
|         return super().next_page_number()
 | |
| 
 | |
|     def previous_page_number(self):
 | |
|         if not self.has_previous():
 | |
|             return None
 | |
|         return super().previous_page_number()
 | |
| 
 | |
| 
 | |
| class ValidAdjacentNumsPaginator(Paginator):
 | |
|     def _get_page(self, *args, **kwargs):
 | |
|         return ValidAdjacentNumsPage(*args, **kwargs)
 | |
| 
 | |
| 
 | |
| class AsyncValidAdjacentNumsPage(AsyncPage):
 | |
|     async def anext_page_number(self):
 | |
|         if not await self.ahas_next():
 | |
|             return None
 | |
|         return await super().anext_page_number()
 | |
| 
 | |
|     async def aprevious_page_number(self):
 | |
|         if not await self.ahas_previous():
 | |
|             return None
 | |
|         return await super().aprevious_page_number()
 | |
| 
 | |
| 
 | |
| class AsyncValidAdjacentNumsPaginator(AsyncPaginator):
 | |
|     def _get_page(self, *args, **kwargs):
 | |
|         return AsyncValidAdjacentNumsPage(*args, **kwargs)
 |