diff piecrust/generation/base.py @ 723:606f6d57b5df

routing: Cleanup URL routing and improve page matching. * Add new types of route parameters for integers (int4, int2, int). * Remove hard-coded hacks around converting year/month/day values. * Make the blog post routes use the new typed parameters. * Fix problems with matching routes with integer parameters when they can get confused with a sub-page number.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 29 May 2016 20:19:28 -0700
parents ab5c6a8ae90a
children 661f7ba15762
line wrap: on
line diff
--- a/piecrust/generation/base.py	Sun May 29 20:15:56 2016 -0700
+++ b/piecrust/generation/base.py	Sun May 29 20:19:28 2016 -0700
@@ -129,6 +129,10 @@
         raise Exception("Can't find source '%s' for generator '%s'." % (
             self.source_name, self.name))
 
+    def getPageFactory(self, route_metadata):
+        # This will raise `PageNotFoundError` naturally if not found.
+        return self.page_ref.getFactory()
+
     def bake(self, ctx):
         raise NotImplementedError()