Django/Python缓存解决方案,我可以使用复杂的键而不仅仅是字符串来访问它

Django/Python缓存解决方案,我可以使用复杂的键而不仅仅是字符串来访问它,python,django,Python,Django,据我所知,Django/Python的所有缓存解决方案基本上都基于键/值字典 cache.store(“key”, “value”) cache.get(“key”) # <- “value” cache.store(“键”、“值”) cache.get(“key”)35;我想你可以试试这个软件包,它可以自动记忆参数和关键字参数。或者如果您使用redis,并且需要更多的控制,您也可以尝试我的软件包是的,通过字符串化参数来创建键是一个不错的选择。但每个字符都是1字节,因此如果键太长且RA

据我所知,Django/Python的所有缓存解决方案基本上都基于键/值字典

cache.store(“key”, “value”)

cache.get(“key”) # <- “value”
cache.store(“键”、“值”)

cache.get(“key”)35;我想你可以试试这个软件包,它可以自动记忆参数和关键字参数。或者如果您使用redis,并且需要更多的控制,您也可以尝试我的软件包

是的,通过字符串化参数来创建键是一个不错的选择。但每个字符都是1字节,因此如果键太长且RAM非常有限,则可以通过哈希字符串生成唯一键。生成的哈希值将始终具有固定大小。MD5哈希在这里是一个理想的选择。是的,我也考虑过哈希,但我有点忙于对Python类进行哈希。没想到它会是“类-String>哈希”:这是有道理的,我可能会那样做。谢谢
def my_view(request):

    output = cache.get(request, None)
    if output is None:
        output = complex_stuff(request) # <- can be serialized as string
        cache.store(request, output)