SQLModel ne propose pas nativement de mécanisme de cache pour les lookups de session. Pour cacher les résultats de session.get() avec Redis, il fallait écrire du code boilerplate répétitif, difficile à maintenir et source d'erreurs.
Une seule déclaration __cache_config__ sur le modèle active automatiquement le cache pour tous les session.get(). TTL configurable par modèle, support sync et async, transport Redis interchangeable.
# pip install sqlmodel-cache SQLModelCache.configure( transport=RedisSyncTransport(redis.Redis.from_url("redis://...")), default_ttl=300, ) class Hero(SQLModel, table=True): __cache_config__ = CacheConfig(ttl=600) id: int | None = Field(default=None, primary_key=True) name: str = "" # cache miss → DB, cache hit → Redis hero = session.get(Hero, 1)
Early release v0.1.1 publiée sur PyPI. CI via GitHub Actions avec tests automatisés à chaque push. Documentation sur GitHub Pages. Support sync et async. Projet en pause temporaire. Développement actif à reprendre.