remove render_to from utils
This commit is contained in:
parent
30199706e7
commit
f988bd6329
1 changed files with 0 additions and 52 deletions
|
@ -23,58 +23,6 @@ from djangobb_forum import settings as forum_settings
|
|||
_SMILES = [(re.compile(smile_re), path) for smile_re, path in forum_settings.SMILES]
|
||||
|
||||
|
||||
def render_to(template):
|
||||
"""
|
||||
Decorator for Django views that sends returned dict to render_to_response function.
|
||||
|
||||
Template name can be decorator parameter or TEMPLATE item in returned dictionary.
|
||||
RequestContext always added as context instance.
|
||||
If view doesn't return dict then decorator simply returns output.
|
||||
|
||||
Parameters:
|
||||
- template: template name to use
|
||||
|
||||
Examples:
|
||||
# 1. Template name in decorator parameters
|
||||
|
||||
@render_to('template.html')
|
||||
def foo(request):
|
||||
bar = Bar.object.all()
|
||||
return {'bar': bar}
|
||||
|
||||
# equals to
|
||||
def foo(request):
|
||||
bar = Bar.object.all()
|
||||
return render_to_response('template.html',
|
||||
{'bar': bar},
|
||||
context_instance=RequestContext(request))
|
||||
|
||||
# 2. Template name as TEMPLATE item value in return dictionary
|
||||
|
||||
@render_to()
|
||||
def foo(request, category):
|
||||
template_name = '%s.html' % category
|
||||
return {'bar': bar, 'TEMPLATE': template_name}
|
||||
|
||||
#equals to
|
||||
def foo(request, category):
|
||||
template_name = '%s.html' % category
|
||||
return render_to_response(template_name,
|
||||
{'bar': bar},
|
||||
context_instance=RequestContext(request))
|
||||
"""
|
||||
|
||||
def renderer(function):
|
||||
def wrapper(request, *args, **kwargs):
|
||||
output = function(request, *args, **kwargs)
|
||||
if not isinstance(output, dict):
|
||||
return output
|
||||
tmpl = output.pop('TEMPLATE', template)
|
||||
return render_to_response(tmpl, output, context_instance=RequestContext(request))
|
||||
return wrapper
|
||||
return renderer
|
||||
|
||||
|
||||
def absolute_url(path):
|
||||
return 'http://%s%s' % (Site.objects.get_current().domain, path)
|
||||
|
||||
|
|
Reference in a new issue