Willkommen zu unserem nächsten Let's Build! Dieser Build bringt als Inspiration für das Projekt den bekannten Social-Media-Riesen Twitter in den Mix ein. Wir werden eine Art Nachahmung namens twittter erstellen.
Diese App demonstriert vor allem ein Benutzerrollensystem, das Ihrer Webanwendung und Ihrer Navigationsanwendung das Gefühl gibt, alles innerhalb des Browsers zu sein. Ich werde etwas schneller vorgehen als beim vorherigen Build, da es sich eher um eine grundlegende Übung handelte, bei der ich allgemeine Konzepte rund um das Ruby on Rails-Ökosystem erklärt habe. Wir werden Rails-Generatoren verwenden, um einige der Dinge, die ich bereits behandelt habe, zu unterstützen. Wenn Sie das erste Let's Build noch nicht gesehen haben, lade ich Sie ein, dies zu tun, um zu verstehen, was wir tun.
Laden Sie den Quellcode herunter
Die App selbst wird über ein grundlegendes CRUD-Prinzip verfügen, mit dem wir Tweets erstellen, lesen, aktualisieren und zerstören können. Im Wesentlichen ist dies dasselbe wie bei meinem vorherigen Build, bei dem wir Beiträge für einen Blog erstellt haben. Zusätzlich zu den Tweets stelle ich ein neues Juwel namens Devise vor, das die Erstellung eines kompletten Benutzerrollen- und Authentifizierungssystems einfach macht. In Kombination mit diesem Juwel können wir Benutzer authentifizieren, die Tweets verfassen möchten. Die Tweets eines Benutzers sind dann auch mit seinem Konto verknüpft. Das Endergebnis ist eine öffentlich zugängliche Website mit einem Stream von Tweets verschiedener Benutzer. Benutzer, die über ein Konto verfügen, können sich anmelden, um ihre eigenen Tweets zu erstellen und sie dem öffentlichen Stream hinzuzufügen.
Twitter ist eine ziemlich aufwendige Anwendung. Ich werde nicht auf Antworten, Retweets, Likes und viele andere grundlegende Merkmale des berühmten Social-Media-Riesen eingehen. Stattdessen lade ich Sie ein, darüber nachzudenken, wie Sie diese Funktionen möglicherweise hinzufügen können. Versuchen Sie, ähnlich wie bei dem von mir erstellten Blog mit Kommentaren, herauszufinden, wie Sie der Anwendung selbst Antworten hinzufügen können. (Tipp: Es ist dasselbe wie das Hinzufügen von Kommentaren zum Blog-Beitrag, wie ich es im vorherigen Build getan habe ;) ). Ich werde diese App vielleicht noch einmal besuchen, um als weitere Übung weitere Funktionen hinzuzufügen, aber ehrlich gesagt ist mir die Zeit davongelaufen! Lassen Sie es mich wissen, wenn Sie möchten, dass ich dies weiter ausbaue.
Es gibt auch ein paar Juwelen in freier Wildbahn für das „Liken“ von Beiträgen. Hier ist einer meiner Favoriten
Hinweis: Ein großer Fehler, der mir nach dem Abbruch dieses Builds auffiel, war, dass jeder angemeldete Benutzer die Tweets anderer Benutzer bearbeiten konnte. Dies stellt eine große Sicherheitslücke dar, da die Fähigkeiten eines Benutzers nur innerhalb seines eigenen Kontos liegen sollten. Versuchen Sie, eine Möglichkeit zu finden, nur dem aktuell angemeldeten Benutzer das Bearbeiten seiner eigenen Tweets und nicht anderen Benutzern zu erlauben. Ich werde diese Serie möglicherweise noch einmal besuchen, um diese Probleme zu erweitern und anzusprechen.
Bessere Fehler – Für bessere Fehler
Bulma – für einfaches CSS. Fühlen Sie sich frei, Ihre eigenen Stile zu entwickeln und/oder ein anderes Framework zu verwenden.
Guard – Nützlich für das Live-Neuladen unserer scss
, js
, css
und erb
Dateien, obwohl es noch viel mehr kann!
Guard ist erforderlich, damit das Guard LiveReload-Gem funktioniert
LiveReload bewachen
Einfaches Formular – Für einfache Formulare!
Devise – Mühelose Benutzerrollen und Authentifizierung
Gravatar_image_tag – Integriertes Bild-Tag, das Gravatare ausspuckt.
Lesen Sie weiter auf web-crunch.com