如何在Django中缓存一小段信息

问题描述 投票:0回答:1

我有一个网站,可以向用户提供问题列表。这组问题对于所有用户来说都是相同的。我将这些问题存储在文本文件中。服务器运行时该文件的内容不会改变。

我无法使用静态页面来显示这些问题,因为我有一些逻辑来决定何时显示哪个问题。

我想将这些问题缓存在内存中(而不是每次用户连接时从硬盘读取文件)。我正在使用 Django 1.7。

我确实从 Django 的网站上阅读了有关缓存的内容,我认为建议的方法(如 memcached 和数据库)对于我的需求来说太重了。对于我的情况,什么是一个好的解决方案?使用全局变量?

python django caching
1个回答
0
投票

您可以使用很多缓存后端,如https://docs.djangoproject.com/en/1.7/topics/cache/

中所列

我自己还没有尝试过文件系统或本地内存缓存,我一直需要memcached,但看起来它们是可用的,剩下的就是小菜一碟了!

from django.core import cache

cache_key = 'questions'
questions = cache.cache.get(cache_key) # to get
if questions:
  # use questions you fetched from cache
else:
  questions = { 'question1': 'How are you?'} #Something serializable that has your questions
  cache.cache.set(cache_key, questions)
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.