Se connecter

Informatique

Programmation

Sujet : Mon site n'affiche pas les nouveaux éléments de la base de données - Nextjs
1
les-toilettes
Niveau 5
25 mai 2023 à 22:28:31

Slt, j'ai upload un site internet Nextjs sur Vercel: https://my-workspace-7wd4d43daes-mikalem898.vercel.app/

Voila mon prblm: je peux tt à fait ajouter des données (le but est d'ajouter des taches, des notes, ...), mais une fois ajoutées, le site n'affiche pas les données qui ont été upload dans la DB apres le build du site.

En gros quand je fais un build tt est mis à jour, mais impossivble de voir les nouvelles données ajoutées après un build sans en refaire un.
Pourtant que je vais voir dans la base de données, les ajouts y sont présents

les-toilettes
Niveau 5
26 mai 2023 à 22:06:33

:up:

GrosMarcassin
Niveau 9
27 mai 2023 à 20:20:33

Bah c'est parce que quand tu build ça récupère les données de ta BDD pour générer les pages html.

Ensuite ces pages sont en gros mises en cache par le CDN de Vercel.

Si tu veux mettre à jour les données tu peux utiliser un webhook pour régénérer des routes sur demande, utiliser ce qu'ils appellent incremental static regeneration ou alors faire du rendu dynamique au lieu de statique. Avant on utilisait getServerSideProps et dans la version 13 c'est différent je crois.

Renseigne toi sur getServerSideProps et l'équivalent dans la version 13 et sur l'ISR

les-toilettes
Niveau 5
27 mai 2023 à 21:51:41

getServerSideProps c'est ce que j'utilisais avant (le site etait pas upload, seulement en localhost) mais le prblm c'est que ça me bouffe bcp de connexion à la base de données. Et normalement c'est censé fonctionner puisqu'à chaque fois je refais une redirection sur la page actuelle (en gros c('est comme si la page etait actualisée), et en localhost ça fonctionne.

les-toilettes
Niveau 5
27 mai 2023 à 22:10:55

Le 27 mai 2023 à 20:20:33 :
Bah c'est parce que quand tu build ça récupère les données de ta BDD pour générer les pages html.

Ensuite ces pages sont en gros mises en cache par le CDN de Vercel.

Si tu veux mettre à jour les données tu peux utiliser un webhook pour régénérer des routes sur demande, utiliser ce qu'ils appellent incremental static regeneration ou alors faire du rendu dynamique au lieu de statique. Avant on utilisait getServerSideProps et dans la version 13 c'est différent je crois.

Renseigne toi sur getServerSideProps et l'équivalent dans la version 13 et sur l'ISR

Dcp j'ai testé ça fonctionne, merci j'y avait pas pensé

1
Sujet : Mon site n'affiche pas les nouveaux éléments de la base de données - Nextjs
   Retour haut de page
Consulter la version web de cette page