L'essentiel de Ruby on Rails

Défi : Créer une donnée de type vote avec Ruby

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Le système de votes de Stack Overflow a largement contribué à son succès. Dans cet exercice, vous allez ajouter ce système à votre application.
01:39

Transcription

Je vous propose un nouvel exercice. Il va s'agir d'ajouter un système de vote à votre application. Il doit être possible de voter positivement ou négativement pour chaque sujet et réponse. Le nombre de votes doit s'afficher quelque part au niveau de la page de visualisation des sujets de discussion. Vous pouvez ajouter ce système vous-mêmes si vous vous sentez aventureux ou utiliser la gemme « acts as votable ». Nous utiliserons la gemme dans la solution pour aller plus vite. Mais il peut être un très bon exercice de le faire vous-mêmes. Pour les apprenant un peu plus avancés, sachez cependant que vous risquez de vous heurter à de problèmes de performance si vous ne gérez pas bien les données votes avec beaucoup d'utilisateurs. Une piste serait d'utiliser le stockage « binary json » de la base de données « postgres » pour ne pas créer trop de données vote. Par exemple, vous pourriez stocker les votes dans « topic », sous forme d'un JSON, de la manière suivante : avec les clés « upvote » et « downvote », qui contiennent exactement le nombre de votes up le nombre de votes down, suivi d'un tableau des utilisateurs ayant respectivement upvoté ou downvoté référencés par leur ID. Ce n'est là évidemment qu'un exemple. Il existe une multitude de façons de gérer des votes sans multiplier les données en base de données. En effet, comprenez bien que si vous générez une donnée vote par topic, par utilisateur, vous risquez très vite de vous retrouver avec des millions de données en base de données. Enfin, si vous vous sentez à l'aise avec le Javascript, vous pouvez gérer les votes en Ajax, avec par exemple le début de code suivant. Nous utiliserons la méthode « post » de Jquery afin d'envoyer des données aux URL respectives, upvote et downvote. Une fois la réponse reçue, nous incrémentons ou décrémentons le nombre de votes qui s'affichent sur la page. Bonne chance !

L'essentiel de Ruby on Rails

Concevez des applications web évolutives et intemporelles avec Ruby on Rails. Installez l’environnement, réalisez un projet de stack overflow, enrichissez-le, etc.

6h08 (85 vidéos)
Aucun commentaire n´est disponible actuellement

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !