summaryrefslogtreecommitdiff
path: root/pecan/core.py
diff options
context:
space:
mode:
Diffstat (limited to 'pecan/core.py')
-rw-r--r--pecan/core.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/pecan/core.py b/pecan/core.py
index 173210b..af5d943 100644
--- a/pecan/core.py
+++ b/pecan/core.py
@@ -390,18 +390,19 @@ class PecanBase(object):
return args, varargs, kwargs
def render(self, template, namespace):
- renderer = self.renderers.get(
- self.default_renderer,
- self.template_path
- )
if template == 'json':
renderer = self.renderers.get('json', self.template_path)
- if ':' in template:
+ elif ':' in template:
+ renderer_name, template = template.split(':', 1)
+ renderer = self.renderers.get(
+ renderer_name,
+ self.template_path
+ )
+ else:
renderer = self.renderers.get(
- template.split(':')[0],
+ self.default_renderer,
self.template_path
)
- template = template.split(':')[1]
return renderer.render(template, namespace)
def find_controller(self, state):