data renderer treating its sources urls as templates
This commit is contained in:
parent
2055a8c858
commit
6f1da5d02a
|
@ -111,6 +111,21 @@ class Renderer(template.TemplateRenderer):
|
|||
return super(Renderer, self).render(context)
|
||||
|
||||
|
||||
class TemplateSourcesRenderer(Renderer):
|
||||
"""
|
||||
Interprets its sources urls as django templates and renders them with
|
||||
current context
|
||||
"""
|
||||
|
||||
def get_sources(self, context):
|
||||
for source in self.config['sources']:
|
||||
slug = '{0}.{1}'.format(self.slug, source['slug'])
|
||||
source['url'] = template.Template(source['url']).render(context)
|
||||
result = source.get('default', {})
|
||||
result['data'] = Data(slug, self.config, source, context)
|
||||
yield source['slug'], result
|
||||
|
||||
|
||||
class DictRenderer(Renderer):
|
||||
"""
|
||||
Aggregates all data from the sources into a dict and expose it to the
|
||||
|
|
Reference in New Issue