Re: [Python-es] Cómo utilizar la variable controller en PyRoutes

2011-06-14 Por tema Olemis Lang (Simelix)
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

2011-06-13 Por tema Olemis Lang (Simelix)
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

2011-06-13 Por tema Chema Cortes
-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-06-13 Por tema Olemis Lang (Simelix)
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/