← Retour aux projets
Open Source · PyPI · v0.1.1 · Early Release
sqlmodel-cache
Projet open source en cours de développement. Cache Redis transparent pour SQLModel. Première version publiée sur PyPI, CI et tests en place.
PyPI
sqlmodel-cache
Version
v0.1.1
License
MIT
Le problème

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.

La solution

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)
État actuel

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.

Stack
PythonRedisSQLModelPyPIGitHub ActionsMkDocspytest