I can use these cache methods set(), get(), touch(), incr(), decr(), incr_version(), decr_version(), delete(), delete_many(), clear() and close() as shown below:
from django.core.cache import cache
cache.set("first_name", "John")
cache.set("last_name", "Smith")
cache.set_many({"age": 36, "gender": "Male"})
cache.get("first_name")
cache.get_or_set("last_name", "Doesn't exist")
cache.get_many(["age", "gender"])
cache.touch("first_name", 60)
cache.incr("age")
cache.decr("age")
cache.incr_version("first_name")
cache.decr_version("last_name")
cache.delete("first_name")
cache.delete_many(["last_name", "age"])
cache.clear()
cache.close()
But, dir() doesn't show these cache methods as shown below:
from django.core.cache import cache
print(dir(cache)) # Here
[
'__class__', '__contains__', '__delattr__', '__dict__', '__dir__',
'__doc__', '__eq__', '__format__', '__ge__', '__getattr__',
'__getattribute__', '__gt__', '__hash__', '__init__',
'__init_subclass__', '__le__', '__lt__', '__module__', '__ne__',
'__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__',
'__sizeof__', '__str__', '__subclasshook__', '__weakref__',
'_alias', '_connections'
]
So, how can I show these cache methods?