Estoy tratando de almacenar en caché los resultados de la consulta en mi aplicación django. Sin embargo, parece que está almacenando en caché toda la aplicación. Probé siguiente logi:Cómo guardar el resultado de la consulta en django?
def cacheView():
result = cache.get('key')
if result is None:
result = Model.objects.get(id=1)
cache.set('key', 'result')
Estoy llamando a este método cuando usuario se conecta Sin embargo, si trato de cerrar la sesión después de iniciar sesión, me mantiene en la misma página como si todavía estoy conectado yo tratamos de seguir.. la documentación de Django en el caché al http://docs.djangoproject.com/en/1.2/topics/cache/ pero no tuvo éxito.
Otra cosa que probé es que si trato de usar el decorador caché justo por encima de la vista como:
@cache_control(max_age=1000)
def cacheView():
...
lo hace da un error que dice "cabecera de la respuesta no está definido". Soy nuevo en Django y estoy seguro de que me perdí algo. ¿Alguna idea?
definitivamente perdida que en el manual. Ahora que sé que almacena en caché el queryset, mi siguiente pregunta sería qué método de caché usará. ¿Porque quería guardar esto en Memcache que configuré en mi settings.py pero no estoy seguro si django tomará ese método o utilizará el caché de la base de datos? – jindals
De forma predeterminada, django está utilizando la memoria local para almacenar el caché. Si has configurado otro backend de caché, django lo usará. – bx2
Una pregunta más ¿U necesita almacenar esta información por un tiempo muy largo? – bx2