summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--repoze/bfg/configuration.py14
-rw-r--r--repoze/bfg/router.py2
2 files changed, 10 insertions, 6 deletions
diff --git a/repoze/bfg/configuration.py b/repoze/bfg/configuration.py
index 495445ff6..6b6aa6b86 100644
--- a/repoze/bfg/configuration.py
+++ b/repoze/bfg/configuration.py
@@ -79,8 +79,15 @@ def zcml_configure(name, package):
class Configurator(object):
""" A wrapper around the registry that performs configuration tasks """
- def __init__(self, registry):
+ def __init__(self, registry, defaults=False):
self.reg = registry
+ defaults and self.defaults()
+
+ def defaults(self):
+ self.renderer(chameleon_zpt.renderer_factory, '.pt')
+ self.renderer(chameleon_text.renderer_factory, '.txt')
+ self.renderer(renderers.json_renderer_factory, 'json')
+ self.renderer(renderers.string_renderer_factory, 'string')
def default_configuration(self, root_factory, package=None,
filename='configure.zcml', settings=None,
@@ -106,10 +113,7 @@ class Configurator(object):
self.settings(settings)
self.debug_logger(debug_logger)
self.root_factory(root_factory or DefaultRootFactory)
- self.renderer(chameleon_zpt.renderer_factory, '.pt')
- self.renderer(chameleon_text.renderer_factory, '.txt')
- self.renderer(renderers.json_renderer_factory, 'json')
- self.renderer(renderers.string_renderer_factory, 'string')
+ self.defaults()
# We push our ZCML-defined configuration into an app-local
# component registry in order to allow more than one bfg app to live
diff --git a/repoze/bfg/router.py b/repoze/bfg/router.py
index 6b1502d22..e815d7ab6 100644
--- a/repoze/bfg/router.py
+++ b/repoze/bfg/router.py
@@ -79,7 +79,7 @@ class Router(object):
if self.routes_mapper is not None:
info = self.routes_mapper(request)
match, route = info['match'], info['route']
- if match:
+ if match is not None:
environ['wsgiorg.routing_args'] = ((), match)
environ['bfg.routes.route'] = route
environ['bfg.routes.matchdict'] = match