Re: [Python-es] Cómo utilizar la variable controller en PyRoutes
2011/6/13 Olemis Lang (Simelix) olemis...@gmail.com: 2011/6/13 Chema Cortes p...@ch3m4.org: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 El 13/06/11 14:10, Olemis Lang (Simelix) escribió: Hola a tod@s ! Recientemente he utilizado el módulo `routes` y he notado algo que, a mi entender, es un poco raro; especialmente después de leer la documentación. Allí mencionan ejemplos como el siguiente. Sin embargo, cuando se ejecuta este fragmento no se detecta la ruta {{{ #!python mapper = Mapper() mapper.connect('test', '/{controller}/{action}') print mapper.routematch(environ=environ) None }}} En el Mapper() no especificas los controladores (ni tampoco el directorio de los controladores). Por defecto, si no encuentra el controlador adecuado siempre devuelve None. Ése es también el motivo por el que el código que pones luego funciona al especificar un controlador. Pues sí ... esa es la razón . Gracias por la respuesta ! -- Regards, Olemis. Blog ES: http://simelo-es.blogspot.com/ Blog EN: http://simelo-en.blogspot.com/ Featured article: El misterio de la variable controller en la definición de rutas - http://simelo-es.blogspot.com/2011/06/el-misrterio-de-la-variable-controller.html ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
[Python-es] Cómo utilizar la variable controller en PyRoutes
Hola a tod@s ! Recientemente he utilizado el módulo `routes` y he notado algo que, a mi entender, es un poco raro; especialmente después de leer la documentación. Allí mencionan ejemplos como el siguiente. Sin embargo, cuando se ejecuta este fragmento no se detecta la ruta {{{ #!python mapper = Mapper() mapper.connect('test', '/{controller}/{action}') print mapper.routematch(environ=environ) None }}} Por otra parte , si se cambia ligeramente el código anterior entonces sí funciona. {{{ #!python mapper = Mapper() mapper.connect('test', '/hello/{action}', controller='hello') mapper.routematch(environ=environ) }}} Q: - Alguien sabe pq es q no c puede usar la variable `controller` en la regla de las rutas ? Gracias por adelantado -- Regards, Olemis. Blog ES: http://simelo-es.blogspot.com/ Blog EN: http://simelo-en.blogspot.com/ Featured article: Uso local de Dragonfly para depurar sitios web con Opera - http://simelo-es.blogspot.com/2011/06/uso-local-de-dragonfly-para-depurar.html ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Cómo utilizar la variable controller en PyRoutes
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 El 13/06/11 14:10, Olemis Lang (Simelix) escribió: Hola a tod@s ! Recientemente he utilizado el módulo `routes` y he notado algo que, a mi entender, es un poco raro; especialmente después de leer la documentación. Allí mencionan ejemplos como el siguiente. Sin embargo, cuando se ejecuta este fragmento no se detecta la ruta {{{ #!python mapper = Mapper() mapper.connect('test', '/{controller}/{action}') print mapper.routematch(environ=environ) None }}} En el Mapper() no especificas los controladores (ni tampoco el directorio de los controladores). Por defecto, si no encuentra el controlador adecuado siempre devuelve None. Ése es también el motivo por el que el código que pones luego funciona al especificar un controlador. Para solucionarlo, tienes dos opciones: 1.- pasar a Mapper() la ruta (absoluta) a los controladores mapper = Mapper(directory='/ruta/a/los/controllers'] 2.- pasar a Mapper() una función controler_scan que devuelva una lista de controladores Por ejemplo, en el segundo caso sería algo así: def controller_scan(directory=None): return ['controller'] mapper = Mapper(controller_scan=controller_scan) Por otra parte , si se cambia ligeramente el código anterior entonces sí funciona. {{{ #!python mapper = Mapper() mapper.connect('test', '/hello/{action}', controller='hello') mapper.routematch(environ=environ) }}} Q: - Alguien sabe pq es q no c puede usar la variable `controller` en la regla de las rutas ? Gracias por adelantado -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJN9p6wAAoJEFdWyBWwhL4FgWsIALkbM6oOoh7xsJMLhyA4cyri jxoXmY/70AR+Jfrjtho1nauHNaZ03NoDs9Yzf0bEKingGUhLXLnx8ERiSxeezx8v 9MeO27ytKgJsqBKRKP5q3+X/OYDXL5RLxDqgsyI8N1Y/KxKCxxh15BklvgDQPjNE O/b8RuvxfpjRSKzoY0lFa1hFCsjj/KtfwO8LTSA0vb14Rgnn2I5Ql9tcQCKPkchv 1OkIPNoPFoCAHjC1bsr/7RYtLcMGdKY9w4xGwGYXR74QrfqMY+w7S1Lr0rZe9R+e Opn3ipm+RiS5DM/giylduFkqGLmOPEKVPCykZVYfSN4xOcXQQxi0ZuRCS1K0/DM= =Tc0r -END PGP SIGNATURE- ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] Cómo utilizar la variable controller en PyRoutes
2011/6/13 Chema Cortes p...@ch3m4.org: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 El 13/06/11 14:10, Olemis Lang (Simelix) escribió: Hola a tod@s ! Recientemente he utilizado el módulo `routes` y he notado algo que, a mi entender, es un poco raro; especialmente después de leer la documentación. Allí mencionan ejemplos como el siguiente. Sin embargo, cuando se ejecuta este fragmento no se detecta la ruta {{{ #!python mapper = Mapper() mapper.connect('test', '/{controller}/{action}') print mapper.routematch(environ=environ) None }}} En el Mapper() no especificas los controladores (ni tampoco el directorio de los controladores). Por defecto, si no encuentra el controlador adecuado siempre devuelve None. Ése es también el motivo por el que el código que pones luego funciona al especificar un controlador. Para solucionarlo, tienes dos opciones: 1.- pasar a Mapper() la ruta (absoluta) a los controladores mapper = Mapper(directory='/ruta/a/los/controllers'] 2.- pasar a Mapper() una función controler_scan que devuelva una lista de controladores Por ejemplo, en el segundo caso sería algo así: def controller_scan(directory=None): return ['controller'] mapper = Mapper(controller_scan=controller_scan) Interesante respuesta ... lo pruebo ahora mismo ... ;) -- Regards, Olemis. Blog ES: http://simelo-es.blogspot.com/ Blog EN: http://simelo-en.blogspot.com/ Featured article: Uso local de Dragonfly para depurar sitios web con Opera - http://simelo-es.blogspot.com/2011/06/uso-local-de-dragonfly-para-depurar.html ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/