'Override of the base class for us to look into the
database tables for a template definition, if we can\'t find
one we\'ll return None which means "use default means" (aka filesystem)'

def get_template(self, uri):

    cache_key = ('template_cache.' + fasthash(((microsite_get_value('site_domain') + '.') + uri)))
    template_text = cache.get(cache_key)
    if (not template_text):
        template_obj = MicrositeTemplate.get_template_for_microsite(microsite_get_value('site_domain'), uri)
        if (not template_obj):
            cache.set(cache_key, '##none', settings.MICROSITE_DATABASE_TEMPLATE_CACHE_TTL)
            return None
        template_text = template_obj.template
        cache.set(cache_key, template_text, settings.MICROSITE_DATABASE_TEMPLATE_CACHE_TTL)
    if (template_text == '##none'):
        return None
    return Template(text=template_text)
