diff piecrust/baking/baker.py @ 363:dd25bd3ce1f9

serve: Refactoring and fixes to be able to serve taxonomy pages. * Page sources' `findPagePath` is renamed to `findPageFactory`, so that it also returns source metadata. * Page refs now store possible hits more properly, and use the previous point to also store metadata. As a result, they can also return a proper factory. * Implement `findPageFactory` correctly in all built-in sources. * When the Chef server matches a taxonomy page, get the source metadata from the page ref in order to make a more proper page. * Make the `getRoute(s)` functions explicitely say if they want taxonomy routes or not.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 26 Apr 2015 15:07:40 -0700
parents 938be93215cb
children 4b1019bb2533
line wrap: on
line diff
--- a/piecrust/baking/baker.py	Sun Apr 26 08:34:27 2015 -0700
+++ b/piecrust/baking/baker.py	Sun Apr 26 15:07:40 2015 -0700
@@ -178,7 +178,8 @@
                                             fac.path)
                 record.addEntry(entry)
 
-                route = self.app.getRoute(source.name, fac.metadata)
+                route = self.app.getRoute(source.name, fac.metadata,
+                                          skip_taxonomies=True)
                 if route is None:
                     entry.errors.append(
                             "Can't get route for page: %s" % fac.ref_spec)