# HG changeset patch # User Ludovic Chabant # Date 1437543767 25200 # Node ID 64e1cd71b30ba6a79046abfa944c561902631711 # Parent cce911be024da86384501ba069ccf388f2949f51 serve: Try to serve taxonomy pages after all normal pages have failed. diff -r cce911be024d -r 64e1cd71b30b piecrust/routing.py --- a/piecrust/routing.py Tue Jul 21 22:42:05 2015 -0700 +++ b/piecrust/routing.py Tue Jul 21 22:42:47 2015 -0700 @@ -87,6 +87,10 @@ self._createTemplateFunc(cfg.get('func')) @property + def is_taxonomy_route(self): + return self.taxonomy_name is not None + + @property def source(self): for src in self.app.sources: if src.name == self.source_name: diff -r cce911be024d -r 64e1cd71b30b piecrust/serving/server.py --- a/piecrust/serving/server.py Tue Jul 21 22:42:05 2015 -0700 +++ b/piecrust/serving/server.py Tue Jul 21 22:42:47 2015 -0700 @@ -450,11 +450,15 @@ def find_routes(routes, uri): res = [] + tax_res = [] for route in routes: metadata = route.matchUri(uri) if metadata is not None: - res.append((route, metadata)) - return res + if route.is_taxonomy_route: + tax_res.append((route, metadata)) + else: + res.append((route, metadata)) + return res + tax_res class ErrorMessageLoader(FileSystemLoader):