Vous en avez marre de...
- Écrire du code compliqué pour accéder à des données imbriquées ?
# JSON natif 😫
if 'users' in data and '1' in data['users'] and 'settings' in data['users']['1']:
notification_status = data['users']['1']['settings'].get('notifications', False)
# LiteJsonDb 😊
notification_status = db.get_data("users/1/settings/notifications", default=False)
- Gérer manuellement les fichiers JSON ?
# JSON natif 😫
with open('data.json', 'r') as f:
data = json.load(f)
data['users']['1']['settings']['theme'] = 'dark'
with open('data.json', 'w') as f:
json.dump(data, f)
# LiteJsonDb 😊
db.set_data("users/1/settings/theme", "dark")
- Vérifier constamment si les données existent ?
# JSON natif 😫
try:
user_data = data['users']['1']
except KeyError:
user_data = {}
# LiteJsonDb 😊
user_data = db.get_or_default("users/1", default={})
🎯 La solution : LiteJsonDb !
⚡ Installation rapide
pip install litejsondb
🔥 Pourquoi LiteJsonDb révolutionne la gestion JSON
1. Paths simplifiés vs JSON natif
# Accès aux données imbriquées
# JSON natif 😫
data['users']['1']['profile']['settings']['notifications']['email']
# LiteJsonDb 😊
db.get_data("users/1/profile/settings/notifications/email")
2. Manipulation intelligente des données
# Mise à jour partielle
# JSON natif 😫
if 'users' in data and '1' in data['users']:
data['users']['1'].update({'name': 'Alex'})
with open('data.json', 'w') as f:
json.dump(data, f)
# LiteJsonDb 😊
db.edit_data("users/1/name", "Alex"})
3. Sécurité intégrée
# Chiffrement
# JSON natif 😫
# Nécessite une implémentation manuelle complexe...
# LiteJsonDb 😊
db = JsonDB(crypted=True) # C'est tout ! en BASE64
💡 Fonctionnalités qui changent tout
Accès intelligent aux données
- Paths intuitifs :
users/1/name
au lieu de ['users']['1']['name']
- Des utilité : Plus de productivité !
- Création automatique des chemins intermédiaires
Protection des données
- Chiffrement automatique
- Sauvegarde locale ou Telegram
- Protection contre l'écrasement accidentel
Manipulation simplifiée
- Fusion automatique lors des mises à jour
- Création récursive des structures
- Suppression propre des données
👥 Parfait pour :
1. Développeurs de bots
# Configuration simple
db.set_data("bot/settings", {
"prefix": "!",
"welcome_message": "Bonjour {user}!"
})
2. Applications Web
# Stockage utilisateur
db.set_data("users/1", {
"profile": {"name": "Alex"},
"preferences": {"theme": "dark"}
})
3. Scripts d'automatisation
# Suivi des tâches
db.set_data("tasks/daily", {
"last_run": "2024-03-20",
"status": "success"
})
🚀 Exemple complet d'utilisation
from litejsondb import JsonDB
# Initialisation
db = JsonDB(crypted=True)
# Création de structure complexe
db.set_data("app/users/1", {
"name": "Alex",
"settings": {
"notifications": True,
"theme": "dark"
}
})
# Modification facile
db.edit_data("app/users/1/settings", {
"language": "fr" # Ajoute sans écraser
})
# Accès simple
theme = db.get_data("app/users/1/settings/theme")
📈 Performance et fiabilité
- Optimisé pour les petites et moyennes bases de données
- Parfait pour remplacer les fichiers de configuration
- Idéal pour le stockage local de données structurées
🔄 Mise à jour facile
pip install --upgrade litejsondb
🌟 Ce que disent les développeurs
> "Plus besoin de me battre avec les dictionnaires imbriqués !"
> "Le système de paths est un game changer"
> "Enfin une solution simple pour mes bots Discord"
En savoir plus: https://www.codingteam.fr/2024/09/litejsondb-le-guide-ultime-pour-devenir.html
#Python #JSON #Database #Developer #OpenSource #Productivity