add: Django projekts to KB
This commit is contained in:
1 parent
eadfe50e65
commit
4723b23600
2 files changed
+69
-3
No files matched your search
@@ -58,6 +58,32 @@ Jedes Projekt/Kontext besteht aus einem Link bzw Quell, einer Beschreibung, den
|
||||
- Herausforderungen: Wiederverwendbare, responsive Seitenelemente für unterschiedliche Informationsinhalte; einheitliche Einbindung von Navigation, Kontakt- und Social-Media-Links; lokal reproduzierbarer Build unter Windows und Linux.
|
||||
- Lösungen: Erweiterung der Jekyll-Website um ein Full-Width-Kartenlayout auf Basis von Liquid-Templates; Anpassung von Karten- und Kontakt-Styles mit Sass; Pflege von Navigation, Footer und Social-Media-Verlinkungen; Dokumentation der lokalen Ruby-/Bundler-Installation und des Jekyll-Entwicklungsservers für Windows und Linux.
|
||||
|
||||
## Django-Lernprojekt mit Umfrage- und Blog-App
|
||||
|
||||
- Zeitraum: 20. bis 28. Juni 2018
|
||||
- Quelle: `/Volumes/rob/code/django-first-app`.
|
||||
- Kontext: Schrittweiser Aufbau einer Django-Webanwendung mit den Apps `polls` und `blog` zum Erlernen der zentralen Framework-Konzepte.
|
||||
- Herausforderungen: Strukturierung von Projekt und Apps; Verknüpfung verschachtelter URL-Konfigurationen; Modellierung und Abfrage relationaler Daten; Verarbeitung von Formular-POSTs sowie Trennung von Darstellung und Anwendungslogik.
|
||||
- Lösungen: Django-ORM-Modelle `Question` und `Choice` mit Fremdschlüssel und Migration; SQLite als Entwicklungsdatenbank; Registrierung der Modelle im Django-Admin; funktionsbasierte und generische `ListView`-/`DetailView`-Ansichten; Templates und Kontextvariablen; Namespaces, `get_object_or_404`, `reverse` und Redirect-after-POST für den Abstimmungsablauf.
|
||||
|
||||
## info.ngo – Django-CMS-Prototyp
|
||||
|
||||
- Zeitraum: Juli 2019, belegt durch die Projektdateien vom 30. Juli 2019.
|
||||
- Quelle: lokales Projektverzeichnis `/Volumes/rob/code/django-cms/info.ngo`.
|
||||
- Kontext: Prototyp einer redaktionell pflegbaren Website auf Basis von Django CMS 3.6 und Django 1.x.
|
||||
- Herausforderungen: Aufbau frei editierbarer Seitenlayouts; Integration eines umfangreichen CMS-Plugin-Ökosystems; Navigation, Sitemap sowie konsistente Verwaltung von statischen Dateien und Medien.
|
||||
- Lösungen: Django-CMS-Templates mit Toolbar, Menüs, Sekizai-Blöcken und Platzhaltern für Vollbreiten- und Sidebar-Layouts; CMS-Sitemap und Django-Admin; SQLite-Datenbank; Plugins für CKEditor-Text, Links, Bilder, Dateien, Spalten, Styles, Snippets, Google Maps und Videos sowie `django-filer`, `easy-thumbnails`, Treebeard und MPTT.
|
||||
|
||||
## info.ngo – Event-, Karten- und Datenplattform
|
||||
|
||||
- Zeitraum: Juli bis August 2019; Teamprojekt mit eigenen, durch Git belegten Beiträgen vom 30. Juli bis 27. August 2019.
|
||||
- Quellen: Git-Repository `/Volumes/rob/code/info.ngo/info.ngo`, Django-Anwendung `/Volumes/rob/code/info.ngo/info.ngo/InfoNgo_django` und Wiederaufbaukopie `/Volumes/rob/code/info.ngo/rebuild-rob/InfoNgo_django`.
|
||||
- Kontext: Gemeinsame Entwicklung einer Python- und Django-Plattform zur Gewinnung, Normalisierung, Speicherung, Filterung und kartografischen Darstellung von Veranstaltungs- und Stiftungsinformationen.
|
||||
- Eigene belegte Beiträge: Abruf und Parsing der Stiftungssuche; Einlesen von Thunderbird-Mailboxen und Grundstruktur eines Mail-Parsers; Weiterentwicklung der Kalenderdaten-Auswertung; Dokumentation und Zusammenführung von Teamänderungen.
|
||||
- Herausforderungen: Heterogene Websites, HTML-Seiten und E-Mail-Formate; unregelmäßige Datumsangaben; Vermeidung doppelter Events und Orte; Geokodierung und räumliche Darstellung; gemeinsames Filtern und Paginieren; Überführung eigenständiger Scraper in eine Webanwendung bei weiter möglicher Standalone-Ausführung.
|
||||
- Lösungen: Requests, Beautiful Soup, `lxml`/`html5lib`, Python-`mailbox` und MIME-Verarbeitung sowie CSV-Ausgabe für die Datenerfassung; Django-2.1-Anwendung mit ORM-Modellen für Events und Locations, Migrationen, Many-to-many-Beziehung, eindeutigen Feldern und transaktionaler Importlogik; Factory-/Service-Layer zur JSON-Serialisierung und DB-Übernahme; Geokodierung mit Geopy und GeoJSON-Punkte mit `djgeojson`; Listenansicht mit `django-filter`, Datumsbereichsfilter und Paginierung; Leaflet-Karte mit zeitabhängig eingefärbten Material-Markern; Django-Templates, Authentifizierung, Crispy Forms, Bootstrap und jQuery; MySQL-Konfiguration mit SQLite-Sicherung sowie Python-3.7-/Conda-Umgebung und vorbereiteten Abhängigkeiten für PostgreSQL, Gunicorn, WhiteNoise, Heroku und S3-Speicher.
|
||||
- Varianten: Die Wiederaufbaukopie enthält denselben grundlegenden Django-, App- und Service-Layer; die Hauptvariante erweitert sie um dynamische Popup-Inhalte, zeitabhängige Farbwerte und Material-Icons für Leaflet-Marker.
|
||||
|
||||
## WLAN-gesteuerter LED-Rahmen
|
||||
|
||||
- Zeitraum: September 2022 bis Januar 2023, belegt durch eigene Commits im Repository.
|
||||
|
||||
Reference in new issue
Block a user