feat: stocker et afficher les données étendues dans le modal détail
- Ajout des champs a_propos, description, carateristique, details au modèle ProductSnapshot - Sérialisation JSON pour les listes et dictionnaires - Modification du CRUD pour stocker/lire les données étendues - Modification du runner pour passer les données lors du scrape - AddProductModal envoie les données étendues lors de la création - La base SQLite doit être recréée (suppression de suivi.db) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -93,6 +93,19 @@ def _create_snapshot(
|
||||
# Mettre à jour le produit avec titre/image si manquants
|
||||
_update_product_from_scrape(session, product, data)
|
||||
|
||||
# Sérialiser les données étendues en JSON
|
||||
a_propos = data.get("a_propos")
|
||||
if a_propos is not None:
|
||||
a_propos = json.dumps(a_propos, ensure_ascii=False)
|
||||
|
||||
carateristique = data.get("carateristique")
|
||||
if carateristique is not None:
|
||||
carateristique = json.dumps(carateristique, ensure_ascii=False)
|
||||
|
||||
details = data.get("details")
|
||||
if details is not None:
|
||||
details = json.dumps(details, ensure_ascii=False)
|
||||
|
||||
snapshot = models.ProductSnapshot(
|
||||
produit_id=product.id,
|
||||
run_scrap_id=run.id,
|
||||
@@ -107,6 +120,10 @@ def _create_snapshot(
|
||||
choix_amazon=data.get("choix_amazon"),
|
||||
offre_limitee=data.get("offre_limitee"),
|
||||
exclusivite_amazon=data.get("exclusivite_amazon"),
|
||||
a_propos=a_propos,
|
||||
description=data.get("description"),
|
||||
carateristique=carateristique,
|
||||
details=details,
|
||||
chemin_json_brut=str(raw_json_path) if raw_json_path else None,
|
||||
statut_scrap=status,
|
||||
message_erreur=error_message,
|
||||
|
||||
Reference in New Issue
Block a user