Mercurial > piecrust2
comparison piecrust/data/paginationdata.py @ 711:ab5c6a8ae90a
bake: Replace hard-coded taxonomy support with "generator" system.
* Taxonomies are now implemented one or more `TaxonomyGenerator`s.
* A `BlogArchivesGenerator` stub is there but non-functional.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Thu, 26 May 2016 19:52:47 -0700 |
parents | 32c7c2d219d2 |
children | d4408fbbbc7d |
comparison
equal
deleted
inserted
replaced
710:e85f29b28b84 | 711:ab5c6a8ae90a |
---|---|
15 page = self._page | 15 page = self._page |
16 if self._route is None: | 16 if self._route is None: |
17 # TODO: this is not quite correct, as we're missing parts of the | 17 # TODO: this is not quite correct, as we're missing parts of the |
18 # route metadata if the current page is a taxonomy page. | 18 # route metadata if the current page is a taxonomy page. |
19 route_metadata = create_route_metadata(page) | 19 route_metadata = create_route_metadata(page) |
20 self._route = page.app.getRoute(page.source.name, route_metadata) | 20 self._route = page.app.getSourceRoute(page.source.name, route_metadata) |
21 self._route_metadata = route_metadata | 21 self._route_metadata = route_metadata |
22 if self._route is None: | 22 if self._route is None: |
23 raise Exception("Can't get route for page: %s" % page.path) | 23 raise Exception("Can't get route for page: %s" % page.path) |
24 return self._route.getUri(self._route_metadata) | 24 return self._route.getUri(self._route_metadata) |
25 | 25 |
64 qp = QualifiedPage(self._page, self._route, | 64 qp = QualifiedPage(self._page, self._route, |
65 self._route_metadata) | 65 self._route_metadata) |
66 ctx = PageRenderingContext(qp) | 66 ctx = PageRenderingContext(qp) |
67 render_result = render_page_segments(ctx) | 67 render_result = render_page_segments(ctx) |
68 segs = render_result.segments | 68 segs = render_result.segments |
69 except Exception as e: | 69 except Exception as ex: |
70 logger.exception(ex) | |
70 raise Exception( | 71 raise Exception( |
71 "Error rendering segments for '%s'" % uri) from e | 72 "Error rendering segments for '%s'" % uri) from ex |
72 else: | 73 else: |
73 segs = {} | 74 segs = {} |
74 for name in self._page.config.get('segments'): | 75 for name in self._page.config.get('segments'): |
75 segs[name] = "<unavailable: current page>" | 76 segs[name] = "<unavailable: current page>" |
76 | 77 |