[PYTHON] Die Geschichte der Erstellung einer Webanwendung, die umfangreiche Lesungen mit Django aufzeichnet

Einführung

Ausgiebiges Lesen auf Englisch, das Öffnen und Aufzeichnen des umfangreichen Notizbuchs jedes Mal, wenn ich es lese, ist ein Chaos, und ich kann meine Motivation nicht aufrechterhalten. .. .. Also habe ich den Extensive Reader zu einer Webanwendung gemacht. Was ich gemacht habe → https://tadokuapp.herokuapp.com/tadoku/

Funktion

Da es langweilig wäre, Datum, Titel, Anzahl der Wörter usw. wie bei einem umfangreichen Papierleser aufzulisten, wird die Anzahl der Wörter im Kalender angezeigt. Außerdem wird die Anzahl der monatlich gelesenen Wörter als Balkendiagramm ausgegeben. Screenshot from 2020-03-20 02-51-34_Original.jpg Screenshot from 2020-03-20 02-55-13_Original.jpg

Entwicklungsumgebung

python3.7.6 Django3.0.3

Kalender

Reihe der Kalendererstellung mit Django Ich bezog mich auf den Kalender dieser Person. Ich weiß das wirklich zu schätzen. ~~ Ich kann es nicht selbst machen ~~ Die Anzahl der an diesem Tag gelesenen Wörter wird unter dem Datum angezeigt.

Rund um die Authentifizierung

Verwenden Sie zum An- und Abmelden die mit Django standardmäßig verwendete und melden Sie sich selbst an. Schreiben Sie außerdem HTML-Code oben auf die Seite, sodass beim Anmelden "Willkommen (Benutzername), Abmelden" und beim Abmelden "Willkommensböe, Anmelden" angezeigt wird.

base.html


{% if user.is_authenticated %}
    <a href="{% url 'accounts:logout' %}" class='user'>Welcome {{ user.get_username }}, logout</a>
{% else %}
    <a href="{% url 'accounts:login' %}" class='user'>Welcome guest, login here!</a>
{% endif %}

Graph

Übergeben Sie die Buchinformationen des Benutzers, der derzeit in Ansichten angemeldet ist, an die Vorlage. Chart.js wird zum Zeichnen des Diagramms verwendet. Darüber hinaus werden die Anzahl der Wörter (monatlich und alle zwei), die Anzahl der Wörter gegenüber dem Vormonat und die Anzahl der gelesenen Bücher (monatlich und alle zwei) unter der Grafik angezeigt. Ich habe auch einen Tweet-Button hinzugefügt. https://publish.twitter.com/#

Profil

Ich bin einsam mit nur dem Benutzernamen und den Benutzerinformationen, also habe ich den Benutzerrang ~~ (so etwas wie Atcoders Rate) ~~ eingeführt. Der Benutzerrang wird in Grau, Braun, Grün geändert ... abhängig von der Anzahl der gelesenen Wörter.

Bereitstellen

Das ist Heroku. (Ich wollte es mit DigitalOcean bereitstellen, habe aber aufgegeben, weil die Zahlung Creca oder PayPal war.)

Impressionen

Seit ich angefangen habe, Django zu studieren, hat es unerwartet lange gedauert, aber ich bin froh, dass es abgeschlossen wurde. Es gibt viele Verbesserungen, z. B. die Beschleunigung durch Optimierung von Abfragen und Einführung des Cache sowie die Verbesserung der Benutzerfreundlichkeit durch Verbesserung der sozialen Authentifizierung und der Raten (z. B. Senkung beim Überspringen), sodass ich die Entwicklung fortsetzen werde.

Zusammenfassung

Django macht Spaß.

Recommended Posts

Die Geschichte der Erstellung einer Webanwendung, die umfangreiche Lesungen mit Django aufzeichnet
Die Geschichte, ein Modul zu erstellen, das E-Mails mit Python überspringt
Die Geschichte der Entwicklung einer WEB-Anwendung, die automatisch Fangkopien generiert [MeCab]
Erstellen Sie eine Webanwendung mit Django
Die Geschichte, wie man mit discord.py einen Fragenkasten-Bot erstellt
Die Geschichte, einen Standardtreiber für db mit Python zu erstellen.
Ich habe eine WEB-Bewerbung bei Django gemacht
Eine Geschichte, die die Gegenwart von Qiita mit Qiita API + Elasticsearch + Kibana visualisiert
Die Geschichte, wie man mit Python einen 100-Yen-Frühstücks-Bot für die Universität macht
Die Geschichte einer Soundkamera mit Touch Designer und ReSpeaker
Die Geschichte, ein Paket zu erstellen, das den Betrieb von Juman (Juman ++) & KNP beschleunigt
Die Geschichte eines Mel-Icon-Generators
Die Geschichte einer Box, die Peppers AL Memory und MQTT miteinander verbindet
Die Geschichte von Django, wie er eine Bibliothek erstellt, die vielleicht etwas nützlicher ist
Die Geschichte, einen Line Bot zu erstellen, der uns den Zeitplan für die Wettbewerbsprogrammierung erzählt
Eine Geschichte, die den Aufwand für Betrieb / Wartung reduziert
Die Geschichte eines neuronalen Netzwerks der Musikgeneration
Die Geschichte, eine harte Zeit mit der gemeinsamen Menge HTTP_PROXY = ~ zu haben
Die Geschichte, die Japan ausgab, wurde mit Django verwechselt
Eine Geschichte, die die Lieferung von Nico Nama analysierte.
Erstellen Sie eine Webanwendung mit Django
Erstellen Sie eine Web-App, die Zahlen mit einem neuronalen Netzwerk erkennt
Die Geschichte des Django-Modellfeldes verschwindet aus der Klasse
Erstellen Sie eine Web-API, die Bilder mit Django liefern kann
Stellen Sie die Django-Anwendung mit Docker bereit
Die Geschichte des erneuten Bereitstellens des Anwendungsservers
Die Geschichte des Exportierens eines Programms
Eine Geschichte, die mit der Installation der maschinellen Lernbibliothek JAX zusammenhängt
[Python, Ruby] Selen-Holen Sie sich Webseiteninhalte mit Webdriver
Die Geschichte der Release-Arbeit der Anwendung, die Google nicht erzählt
Die Geschichte der Erstellung einer Website, auf der die Veröffentlichungsdaten von Büchern aufgeführt sind
Eine Geschichte, die die elektronische Bewertung von Prüfungen mit Bilderkennung unterstützt
Führen Sie einen Anwendungstest für Migrationsdateien mit Django + PostgreSQL (Evil Edition) durch.
Startete eine Webanwendung auf AWS mit Django und wechselte Jobs
Beachten Sie, dass ich süchtig danach war, mit Pythons mysql.connector über eine Webanwendung auf die Datenbank zuzugreifen
Die Geschichte, ein Tool zu erstellen, das auf Mac und Windows auf der Spieleentwicklungsseite ausgeführt wird
Die Geschichte des Erstellens eines Bots, der aktive Mitglieder in einem bestimmten Slack-Kanal mit Python anzeigt
Eine Geschichte, bei der es mir schwer gefallen ist, mit der ersten Webanwendung eine "App zu erstellen, die Bilder wie Gemälde konvertiert"
Die Geschichte eines Parksensors in 10 Minuten mit dem GrovePi + Starter Kit
Das LXC Web Panel, das LXC mit einem Browser bedienen kann, war wunderbar
Die Geschichte einer unveränderlichen Form
[Python] Eine schnelle Webanwendung mit Bottle!
Treffen Sie eine Methode einer Klasseninstanz mit der Python Bottle Web API
Die Geschichte, einen Slackbot zu erstellen, der beim Senden des Verarbeitungscodes ein GIF oder PNG ausgibt
Führen Sie eine Python-Webanwendung mit Docker aus
Die Geschichte der Verarbeitung A von Blackjack (Python)
Die Geschichte, ein Tool zum Laden von Bildern mit Python zu erstellen ⇒ Speichern unter
Die Geschichte der Verwendung von mysqlclient, da PyMySQL nicht mit Django 2.2 verwendet werden kann
Vor- und Nachteile von Django, die Menschen mit einjähriger Erfahrung denken
Die Geschichte der IPv6-Adresse, die ich auf ein Minimum beschränken möchte
Rund um die Authentifizierung von PyDrive2, einem Paket zum Betreiben von Google Drive mit Python
Beachten Sie die Lösung, da Django nicht mit pip installiert werden konnte
Ich möchte eine WEB-Anwendung mit den Daten von League of Legends ① erstellen
Die Geschichte der Lernmethode, mit der LinuC Level 1 nur mit ping -t erworben wurde
[Python] Ein Programm, das die Anzahl der Aktualisierungen der höchsten und niedrigsten Datensätze berechnet