2010-04-03 32 views
10

Estoy un poco perdido en cuanto a cómo hacer esto:¿Cómo pasa o comparte variables entre las vistas de django?

Tengo algunos cuadros de selección encadenados, con un cuadro de selección por vista. Cada opción debe guardarse para que se cree una consulta. Al final, la consulta debe ejecutarse.

¿Pero cómo compartes estado en django? Puedo pasar de la vista a la plantilla, pero no la plantilla para ver y no ver para ver. O realmente no estoy seguro de cómo hacer esto. ¡Por favor ayuda!

Respuesta

0

Ponga los valores a mantener en el session.

1

Hay muchas maneras ... en la vista de plantilla ... coloque las variables en campos ocultos en los formularios. Entonces, cuando "envía" en las formas subsiguientes ... los valores están contenidos en la siguiente solicitud.POST.get().

Por supuesto, también puede almacenar los diversos elementos de datos en una tabla de base de datos (disco o ram) entre vistas ... utilizando el session_id como clave en el almacén de datos. (no recomendado para sistemas de carga equilibrada).

Y mi menos favorito son las cookies. (Consulte las API sobre cómo almacenar en las cookies)

ACTUALIZACIÓN: Lo sentimos, no hay ejemplos de código aquí ... los documentos son muy fáciles de leer. También hay un sitio web djangosnippets que usa para buscar código de ejemplo.

Cuestiones relacionadas