# pour savoir quel objet interroger : Routes
from routes import Mapper
from routes.middleware import RoutesMiddleware
-# et analyse de query_string (TODO: etudier parse au lieu de cgi)
-from cgi import parse_qs
+# et analyse des paramètres (POST et query_string) pour filtrage
+from paste.request import parse_formvars
# pour chercher les données sur MS-SQL
from pymssql import connect
super(comare, self).__init__(environ, code_document = 'COM-ARE-%s' % impl)
def dispatcher(environ, start_response):
- """sera lancée par mod_wsgi"""
- if environ.has_key('QUERY_STRING'):
- environ['org.auf.filters'] = parse_qs(environ['QUERY_STRING'])
- else:
- environ['org.auf.filters'] = {}
+ """dispatch vers la bonne methode du bon objet, et retour WSGI"""
+ parse_formvars(environ)
results = environ['wsgiorg.routing_args'][1]
try:
target_class = globals()[results['controller']]
start_response("404 NOT FOUND", [('Content-type', 'text/plain')])
return 'erreur lors du traitement\n%s: %s\n%s' % ( sys.exc_info()[0] , sys.exc_info()[1] , traceback.format_exc())
+# application qui sera lancée par mod_wsgi : on route et on dispatche
application = RoutesMiddleware( dispatcher, mapper)
+# TODO : ajouter un middleware de cache (beaker)
#