Commit 04176645 by Chris Jerdonek

Added Renderer._render_object() method.

parent 3b47fddc
...@@ -286,6 +286,16 @@ class Renderer(object): ...@@ -286,6 +286,16 @@ class Renderer(object):
return unicode(rendered) return unicode(rendered)
def _render_object(self, obj, *context, **kwargs):
"""
Render the template associated with the given object.
"""
context = [obj] + list(context)
template = self.get_associated_template(obj)
return self._render_string(template, *context, **kwargs)
def render_path(self, template_path, *context, **kwargs): def render_path(self, template_path, *context, **kwargs):
""" """
Render the template at the given path using the given context. Render the template at the given path using the given context.
...@@ -294,7 +304,8 @@ class Renderer(object): ...@@ -294,7 +304,8 @@ class Renderer(object):
""" """
template = self.read(template_path) template = self.read(template_path)
return self.render(template, *context, **kwargs)
return self._render_string(template, *context, **kwargs)
def render(self, template, *context, **kwargs): def render(self, template, *context, **kwargs):
""" """
...@@ -328,8 +339,7 @@ class Renderer(object): ...@@ -328,8 +339,7 @@ class Renderer(object):
""" """
if not isinstance(template, basestring): if not isinstance(template, basestring):
# Then we assume the template is an object instance. # Then we assume the template is an object.
context = [template] + list(context) return self._render_object(template, *context, **kwargs)
template = self.get_associated_template(template)
return self._render_string(template, *context, **kwargs) return self._render_string(template, *context, **kwargs)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment