Estoy intentando crear un carrito de compras relativamente simple en Django. Estoy almacenando el carrito en request.session ['cart']. Por lo tanto, tendré que acceder a los datos de esta sesión cuando se agregue algo. Sin embargo, si la sesión no está configurada, no puedo acceder sin recibir un error. ¿Hay alguna forma de verificar si se establece una sesión, para que pueda establecerse si no existe?Comprobar si la clave de sesión está establecida en Django
13
A
Respuesta
35
que suponer que usted quiere comprobar si una clave se encuentra en sesión, no si una sesiónse establece (no sé lo que éste significa). Si es así:
Usted puede hacer:
if key not in request.session:
# Set it.
En su caso:
if 'cart' not in request.session:
# Set it.
EDITAR: cambió el fragmento de código para utilizar en lugar de key not in
not key in
. Gracias @katrielalex.
11
Puede utilizar el -method get
en el diccionario de la sesión, no será un error si no existe la clave, pero ninguno devolver como un valor por defecto o el valor por defecto personalizada:
cart = request.session.get('cart')
cart = request.session.get('cart', 'no cart')
Cuestiones relacionadas
- 1. Para comprobar si la sesión está disponible o no
- 2. Django: Comprobar si el atributo de clave externa se establece
- 3. Comprobar si existe sesión JSF
- 4. SparseArray, comprobar si la clave existe
- 5. filtrado de hormigas: error si la propiedad no está establecida
- 6. Comprobar si existe una clave en Memcache
- 7. ¿Cómo comprobar si javascript está deshabilitado?
- 8. Comprobar si la actividad está activa
- 9. VBA Comprobar si la variable está vacía
- 10. Comprobar si OneToOneField hay ninguno en Django
- 11. ¿cómo puedo comprobar si la sesión existe o con valor vacío o nulo en .net C#
- 12. Javascript: comprobar SI la página está en la parte superior
- 13. ¿Cómo comprobar si la matriz está en la lista?
- 14. Comprobar desde .NET si Windows Update está habilitado
- 15. ¿Cómo comprobar si un usuario ha iniciado sesión en php?
- 16. Comprobar si la animación se está ejecutando en cocos2d-x
- 17. Comprobar si la página está en Iframe para Google Chrome
- 18. Cómo comprobar si el valor está en la lista
- 19. Comprobar programáticamente si Windows 7 está activado
- 20. ¿Cómo comprobar si PHP mail() está habilitado?
- 21. Cómo comprobar si Facebook está instalado Android
- 22. C# DataGridView Comprobar si está vacío
- 23. Está buscando una manera elgant para comprobar si una clave exsists en un diccionario
- 24. Lisp común: ¿Cómo comprobar la igualdad establecida, ignorando el orden?
- 25. Comprobar si el proceso se está ejecutando
- 26. Django: el establecimiento de una sesión y obtener la clave de sesión en el mismo punto de vista
- 27. cómo comprobar si boost :: deadline_timer está activo
- 28. ¿Cómo comprobar si está correctamente instalado mongodb
- 29. ¿Cómo comprobar si bluetooth está habilitado programáticamente?
- 30. ¿Cómo comprobar si UITextFields está vacío?
El La forma pythonic sería 'if key not in request.session'. – katrielalex