web/hdalab/modwsgi.wsgi
author ymh <ymh.work@gmail.com>
Thu, 16 Feb 2012 21:48:40 +0100
changeset 119 e3ebe3545f72
permissions -rw-r--r--
first implementation of django version. Kind of work but need optimisation. Will do them after update from raphael

import os
import sys
import site



def application(environ, start_response):
    
    global g_env_set
    
    if 'g_env_set' not in globals() or not g_env_set:
        os.environ['DJANGO_SETTINGS_MODULE'] = environ['DJANGO_SETTINGS_MODULE']
    
        prev_sys_path = list(sys.path)
    
        sys.path.append(environ['PROJECT_PATH'])
        for path in environ.get('PYTHON_PATH', "").split(os.pathsep):
            if path:
                site.addsitedir(path) #@UndefinedVariable
    
        new_sys_path = [] 
        for item in list(sys.path): 
            if item not in prev_sys_path and item not in new_sys_path: 
                new_sys_path.append(item) 
                sys.path.remove(item)
        sys.path[:0] = new_sys_path
        g_env_set = True 

    import django.core.handlers.wsgi

    _application = django.core.handlers.wsgi.WSGIHandler()

    if environ.get('PYDEV_DEBUG', "False").lower() in ["true", "1", "t"]:
        import pydevd #@UnresolvedImport
        pydevd.settrace(suspend=False)

    return _application(environ, start_response)