Foros del Web » Programando para Internet » Python »

Middleware classes en django

Estas en el tema de Middleware classes en django en el foro de Python en Foros del Web. hola una pregunta me gustaria saber para que no sirven las Middleware clases en django ya que me gustaria modificar el comportamiento del url distpach...
  #1 (permalink)  
Antiguo 17/02/2013, 21:16
 
Fecha de Ingreso: diciembre-2011
Mensajes: 408
Antigüedad: 12 años, 4 meses
Puntos: 18
Middleware classes en django

hola una pregunta me gustaria saber para que no sirven las Middleware clases en django ya que me gustaria modificar el comportamiento del url distpach
  #2 (permalink)  
Antiguo 18/02/2013, 13:11
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Middleware classes en django

No tengo idea de que planeas hacer, tal vez si aclaras lo siguiente te podemos ayudar de una mejor manera:

1.- ¿Que tratas de hacer?
2.- ¿Como lo estas haciendo?
3.- ¿Que estas obteniendo?
4.- ¿Que esperas obtener?
5.- Necesitamos código

Si no estas seguro que puede o que no puede hacer el middleware entonces te recomiendo leer la documentación.

Otra cosa no se si lo que tratas hacer es tan fácil como hacer un simple redirect.
  #3 (permalink)  
Antiguo 18/02/2013, 14:27
 
Fecha de Ingreso: diciembre-2011
Mensajes: 408
Antigüedad: 12 años, 4 meses
Puntos: 18
Respuesta: Middleware classes en django

Cita:
Iniciado por razpeitia Ver Mensaje
No tengo idea de que planeas hacer, tal vez si aclaras lo siguiente te podemos ayudar de una mejor manera:

1.- ¿Que tratas de hacer?
2.- ¿Como lo estas haciendo?
3.- ¿Que estas obteniendo?
4.- ¿Que esperas obtener?
5.- Necesitamos código

Si no estas seguro que puede o que no puede hacer el middleware entonces te recomiendo leer la documentación.

Otra cosa no se si lo que tratas hacer es tan fácil como hacer un simple redirect.
quiero crear un sistema de menus como los que tiene joomla o wordpress y flat pages de django con django mttp

es un poco complejo porque quiero hacerme un cms propio y modular

tengo este url pattern

Código:
url(r'^(?P<slug>[0-9A-Za-z-_.//]+)/$', 'moldule_page', name='module_pages_root'),
este apunta a una vista en un modulo o app en django llamada gestor de menus
como en django no se puede hacer ruteo por base de datos (o al menos eso tengo entendido) porque la aplicacion se carga en memoria una sola vez y no se recompila como en php.

entones tengo una vista llamada


Código:
def moldule_page(request,slug):
	menu_item=get_object_or_404(MenuItems,slug=slug)
	...
        ......
        ...... llama al modulo que tenga la vista correspondiente y muestrala
en otro modulo ejemplo esta seria una vista que muestra un articulo

Código:
...... 
.....
def article_details_id(request,slug,id,MenuItems):
	Notice=get_object_or_404(BlogNotice,id=id)
	context_vars=dict(Notice=Notice,Slug=slug,MenuItems=MenuItems)
	return render_to_response('blog/notice.html',context_instance = RequestContext(request,context_vars))
cuando el llama en por ejemplo en el ruteo

www.sitio.com/articulo-de-ejemplo/dinamica


Código:
   def moldule_page(request,slug):
MUESTRAME LA VISTA def article_details_id  PERO SIN HACER IMPORT DEL MODULO QUE LA TIENE
lo que pasa es que no quiero tener urls predefinidas sino mas bien un super ruteo
me suena feo tener una aplicacion con este tipo de urls /blog/2012/10/22/articulo/detalle/ y definirlas a mano

es como un codigo que se autoadministra
  #4 (permalink)  
Antiguo 18/02/2013, 14:34
 
Fecha de Ingreso: diciembre-2011
Mensajes: 408
Antigüedad: 12 años, 4 meses
Puntos: 18
Respuesta: Middleware classes en django

por lo menos me hubiese gustado tener algo asi
from menu.views import moldule_page

Código:
#muestrame la pagina tipo django socketio
@moldule_page #evento que ocurre al momento de ejecutar la pagina
def article_details_id(request,slug):
..... muesta la pagina del articulo detalles y ejecuta su codigo
es algo complejo pero quiero hacer ruteo dinamico basado en base de datos
hehehe creo que tendre que hacer ingenieria inversa a django pero estuve leyendo que los middleware sirven para interceptar peticiones

Etiquetas: django
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:54.