def __init__(self, settings): URLMap.__init__(self) map = {} if settings.MEDIA_URL.startswith('/'): for app_name in settings.INSTALLED_APPS: if app_name == 'django.contrib.admin': continue mod = __import__(app_name, globals(), locals(), ['']) dirname = os.path.dirname(os.path.abspath(mod.__file__)) medias = glob.glob(os.path.join(dirname, 'media*', '*')) for media in medias: dummy, name = os.path.split(media) if not dirname.startswith('.'): map[settings.MEDIA_URL+name] = StaticURLParser(media) map[settings.MEDIA_URL] = StaticURLParser(settings.MEDIA_ROOT) # admin medias if hasattr(settings, "ADMIN_MEDIA_PREFIX"): if settings.ADMIN_MEDIA_PREFIX.startswith('/'): import django.contrib.admin dirname = os.path.dirname(os.path.abspath(django.contrib.admin.__file__)) map[settings.ADMIN_MEDIA_PREFIX] = StaticURLParser(os.path.join(dirname, 'media')) for k in sorted(map, reverse=True): v = map[k] print '%s -> %s' % (k, v.directory) self[k] = v
def __init__(self, settings): URLMap.__init__(self) map = {} if settings.MEDIA_URL.startswith('/'): for app_name in settings.INSTALLED_APPS: if app_name == 'django.contrib.admin': continue mod = __import__(app_name, globals(), locals(), ['']) dirname = os.path.dirname(os.path.abspath(mod.__file__)) medias = glob.glob(os.path.join(dirname, 'media*', '*')) for media in medias: dummy, name = os.path.split(media) if not dirname.startswith('.'): map[settings.MEDIA_URL + name] = StaticURLParser(media) map[settings.MEDIA_URL] = StaticURLParser(settings.MEDIA_ROOT) # staticfiles has_statics = False if hasattr(settings, "STATIC_URL"): if settings.STATIC_URL.startswith('/'): try: map[settings.STATIC_URL] = StaticFiles(settings) except ImportError: pass else: has_statics = True # admin medias if not has_statics and hasattr(settings, "ADMIN_MEDIA_PREFIX"): if settings.ADMIN_MEDIA_PREFIX.startswith('/'): import django.contrib.admin dirname = os.path.dirname(os.path.abspath( django.contrib.admin.__file__)) map[settings.ADMIN_MEDIA_PREFIX] = StaticURLParser( os.path.join(dirname, 'media')) for k in sorted(map, reverse=True): v = map[k] self[k] = v
def __init__(self, *args, **kwargs): URLMap.__init__(self, *args, **kwargs) self['/__about__'] = HubDetails(self) self['/login'] = login_center(self) self['/logout'] = logout_app