N'hésitez pas à modifier le titre si vous savez mieux formuler la question. (L'étiquetage est également un problème.) Le problème peut être trop difficile dans cette forme générale, alors considérons un exemple concret.Comment fournir la page suivante du contenu mis à jour?
Vous obtenez une liste de questions stackoverflow en demandant /questions ?sort=newest
page. Le lien suivant mène à /questions?page=2 &sort=newest
. Je suppose que côté serveur, la requête est traduite en une requête SQL avec une clause LIMIT. Le problème avec cette approche est que si une nouvelle question est ajoutée pendant que l'utilisateur parcourt la première page, sa deuxième page commencera par quelques questions qu'il a déjà vues. (S'il a 10 questions par page et que 10 nouvelles questions ont été ajoutées, il recevra exactement le même contenu la deuxième fois!)
Y at-il une façon élégante de résoudre ce problème commun? Je me rends compte que ce n'est pas un gros problème, du moins pas pour stackoverflow, mais quand même.
La meilleure idée que j'ai (en dehors de stocker l'historique des demandes par client) est d'utiliser le format /questions?answer_id=NNN
. Le serveur renvoie une page qui commence par la réponse demandée et place l'identifiant de la première réponse sur la page suivante dans le lien de la page suivante. Il doit y avoir un moyen d'écrire SQL pour ça, non?
Est-ce que c'est comme ça que ça se passe habituellement? Ou il y a un meilleur moyen?
J'aime votre solution suggérée. Je n'ai rien vu pour le battre (et je ne vois rien de mieux non plus). :) Je vais essayer le SQL ci-dessous. –