feat: add support for pagination

This commit is contained in:
relikd
2022-10-25 01:47:59 +02:00
parent 7c98d74875
commit b75102a211
6 changed files with 187 additions and 18 deletions

View File

@@ -0,0 +1,14 @@
from lektor import datamodel
from typing import TYPE_CHECKING, Any
if TYPE_CHECKING:
from lektor.db import Record
class PaginationConfig(datamodel.PaginationConfig):
# because original method does not work for virtual sources.
@staticmethod
def get_record_for_page(source: 'Record', page_num: int) -> Any:
for_page = getattr(source, '__for_page__', None)
if callable(for_page):
return for_page(page_num)
return datamodel.PaginationConfig.get_record_for_page(source, page_num)