- Author:
 - arthurfurlan
 - Posted:
 - May 3, 2009
 - Language:
 - Python
 - Version:
 - 1.0
 - Score:
 - 1 (after 1 ratings)
 
Default to a static template.
Example:
    urlpatterns = patterns('',
        ...
        # this rule SHOULD BE the last one
        (r'^(?P<template>[a-z-_/]+/?)?$',
            'myproj.apps.myapp.views.static_template'),
    )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50  | # -*- coding: utf-8 -*-
#
# Copyright (c) 2009 Arthur Furlan <[email protected]>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# On Debian systems, you can find the full text of the license in
# /usr/share/common-licenses/GPL-2
from django.shortcuts import render_to_response
form django.template import RequestContext
from django.http import Http404
STATIC_TEMPLATE_BASEPATH = 'static'
def static_template(request, template):
    '''
    Default to a static template.
    Example:
        urlpatterns = patterns('',
            ...
            # this rule SHOULD BE the last one
            (r'^(?P<template>[a-z-_/]+/?)?$',
                'myproj.apps.myapp.views.static_template'),
        )
    '''
    # setting up response vars
    context_instance = RequestContext(request)
    template = re.sub('/+$', '', template)
    try:
        # looking for a template file
        template_name = '%s/%s.html' % (STATIC_TEMPLATE_BASEPATH, template)
        return render_to_response(template_name,
            context_instance=context_instance)
    except:
        try:
            # looking for a template directory
            template = '%s/%s/index.html' % (STATIC_TEMPLATE_BASEPATH, template
            return render_to_response(template_name,
                context_instance=context_instance)
        except:
            raise Http404()
 | 
More like this
- Add Toggle Switch Widget to Django Forms by OgliariNatan 1 month, 4 weeks ago
 - get_object_or_none by azwdevops 5 months, 2 weeks ago
 - Mask sensitive data from logger by agusmakmun 7 months, 2 weeks ago
 - Template tag - list punctuation for a list of items by shapiromatron 1 year, 9 months ago
 - JSONRequestMiddleware adds a .json() method to your HttpRequests by cdcarter 1 year, 9 months ago
 
Comments
Please login first before commenting.