Mercurial > piecrust2
diff piecrust/sources/mixins.py @ 280:8c0c53a315ae
data: Correctly build pagination filters when we know items are pages.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Sun, 01 Mar 2015 21:39:26 -0800 |
parents | 07b4b8484c0a |
children | 4b1019bb2533 |
line wrap: on
line diff
--- a/piecrust/sources/mixins.py Sun Mar 01 21:38:24 2015 -0800 +++ b/piecrust/sources/mixins.py Sun Mar 01 21:39:26 2015 -0800 @@ -2,7 +2,7 @@ import os.path import logging from piecrust.data.base import PaginationData -from piecrust.data.filters import PaginationFilter +from piecrust.data.filters import PaginationFilter, page_value_accessor from piecrust.sources.base import PageFactory from piecrust.sources.interfaces import IPaginationSource, IListableSource @@ -44,10 +44,6 @@ yield PaginationData(page) -def page_setting_accessor(item, name): - return item.config.get(name) - - class SimplePaginationSourceMixin(IPaginationSource): """ Implements the `IPaginationSource` interface in a standard way that should fit most page sources. @@ -70,13 +66,13 @@ if conf == 'none' or conf == 'nil' or conf == '': conf = None if conf is not None: - f = PaginationFilter() + f = PaginationFilter(value_accessor=page_value_accessor) f.addClausesFromConfig(conf) return f return None def getSettingAccessor(self): - return page_setting_accessor + return page_value_accessor class SimpleListableSourceMixin(IListableSource):