Ist Django für mein Projekt geeignet?

Django, Flask, Bottle, WSGI, CGI…
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

Auweh, ich muss noch viel lernen!

Man glaubt es nicht: Ich habe schon wieder auf "Antworten geklickt" - möglicherweise lerne ich doch nichts mehr dazu!
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Es passiert mir selten, aber ich kann total verstehen, warum dir das passiert - wenn das hier eine kommerzielle Seite waere, wuerde das schon fast unter "dark pattern" laufen, weil der deutlich dunklere Button die Aufmerksamkeit auf sich zieht. Aber ein Profi-Tipp: wenn du das tust, ist dein Post noch nicht weg. Du kannst durch den back-button wieder auf die Seite davor, und da fuellt der Browser dann auch den Text ein. Zumindest der Firefox, gerade nochmal getestet. Das ist eben genau fuer solche hoppla-Momente gedacht.
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

Der Button "Antworten" lädt aber auch zum Klicken ein! Das mit dem zuück-Klicken, funktioniert aber, glaube ich, nicht mehr, wenn man die seite gewechselt hat.
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ich weiss nicht was du mit "seite wechseln" meinst, aber wenn du aus versehen auf Antworten drueckst, dann doch, das funktioniert. Probier es einfach mal aus.
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

Mit Seite wechseln, meinte ich, dass ich auf Antworten klicke und dann im Browser eine neue Adresse eingebe oder im Suchfenster von Google einen neuen Suchvorgang starte, wäre mein Eintrag weg - scheint aber nicht so zu sein. Danke für den Hinweis. ... Leider hätte mir dieser Tipp nach einer Woche, wie oben beschrieben, nicht mehr geholfen.
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Klar, irgendwann geht's nicht mehr, spaetestens wenn ein Asteroid die Erde zerstoert. Aber fuer den ersten Aerger ist er brauchbar.
Benutzeravatar
Whitie
User
Beiträge: 216
Registriert: Sonntag 4. Juni 2006, 12:39
Wohnort: Schulzendorf

Pitwheazle hat geschrieben: Sonntag 6. Februar 2022, 15:40 Hallo Whitie,
...
Jetzt wollte ich meine Datenbank in deinen Code einbauen (ich hoffe, ich darf den einfach weiterverwenden) und musste feststellen, dass der Code nicht mehr funktioniert.
...
Na klar kannst du den Code weiter verwenden. Ist aber, wie gesagt, nur ein ganz kleines Beispiel. Ich denke nicht, dass dein Rechentrainer so einfach funktioniert :D

Viele Grüße
Whitie

P. S. Ich habe die Demo mal abgeschaltet, weil dort Google Fonts geladen wurden und noch eine weitere Datei vom CDN. Solltest du (bei Verwendung) rechtlich prüfen.
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

Whitie hat geschrieben: Montag 7. Februar 2022, 08:00 Na klar kannst du den Code weiter verwenden. Ist aber, wie gesagt, nur ein ganz kleines Beispiel. Ich denke nicht, dass dein Rechentrainer so einfach funktioniert :D
P. S. Ich habe die Demo mal abgeschaltet, weil dort Google Fonts geladen wurden und noch eine weitere Datei vom CDN. Solltest du (bei Verwendung) rechtlich prüfen.
Danke, dass der Code nur ein kleinster teil ist, ist mir schon klar - es ist aber ein Anfang.

Wenn ich das richtig sehe, sind die Google Fonts frei zu benutzen: https://developers.google.com/fonts/faq
Benutzeravatar
__blackjack__
User
Beiträge: 13118
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Pitwheazle: Das ist nicht das Problem, das Problem ist das Du dann auch verantwortlich bist zu klären was Google mit den Zugriffsdaten von den Webseitenbesuchern macht, und gegebenenfalls deren Einwilligung einholen musst. Folge dem Link für nähere Erklärungen. Der führt *nicht* zu den Google Fonts.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

@__blackjack__: Da komme ich mir wieder doof vor. In meinem Onlineviedeo habe ich gelernt für CSS GoogleFonts einzubinden. Da habe ich mir schon überlegt, was das für Vortiele hat- 1. Frage: Was ist die Alternative? Die Browser bzw. das Betriebssystem stellen doch eigene Fonts zur Verfügung. Warum soll ich die von Google nehmen? Wenn ich das richtig sehe, werden die, wenn ich sie mit "import" einbinden ständig vom Google Server heruntergeladen und dabei die IP Adresse des Nutzers übertragen - warum kann ich das nicht einfach lassen? Oder wie binde ich diese Fonts statisch ein?

@Whitie: Ich war jetzt zwischenzeitlich fleißig (wenn das Vorankommen auch seeehr langsam ist - es ist unglaublich, was man alles falsch machen kann und was man alles nachschlagen muss und was man dann trotzdem nicht auf Anhieb versteht).
An dich die Frage: Wenn ich das richtig sehe, ist bei dem Code, den ich bei Github herunterlade die Datenbankinhalte nicht dabei, die lagen auf deinem Server - oder mache ich da was falsch? Könntest du mir netterweise jetzt auch den Inhalt von jeweils einem Eintrag zukommen lassen? So bekomme ich wahrscheinlich nie raus, wie du das gezaubert hast.
nezzcarth
User
Beiträge: 1637
Registriert: Samstag 16. April 2011, 12:47

Pitwheazle hat geschrieben: Montag 7. Februar 2022, 13:00 Wenn ich das richtig sehe, sind die Google Fonts frei zu benutzen: https://developers.google.com/fonts/faq
Wie __blackjack__ schon angedeutet hat, ist das eher eine Frage des Datenschutzes. Bei Googlefonts und anderen extern eingebundenen Diensten werden bei der Nutzung deiner Website durch den Browser der Besuchenden Daten von diesem externen Dienst nachgeladen. Dies erlaubt es den Betreiber des Dienstes, Benutzende zu tracken. Daher ist die Verwendung von so etwas umstritten und beispielsweise in öffentlichen Einrichtungen mitunter per Dienstvorschrift o.Ä. untersagt. Aus diesem Grund sollte man bei einer Website, die sich an Schüler*innen richtet, vielleicht eher darauf verzichten. Schöne Fonts kann man auch so einbinden (wenngleich Google auch etwas Zauberei betreibt, die über reines Einbinden hinaus geht).
Zuletzt geändert von nezzcarth am Montag 7. Februar 2022, 19:39, insgesamt 2-mal geändert.
nezzcarth
User
Beiträge: 1637
Registriert: Samstag 16. April 2011, 12:47

Da zwischenzeitlich bereits eine Antwort kam, hier noch ein Nachtrag:
1. Frage: Was ist die Alternative? Die Browser bzw. das Betriebssystem stellen doch eigene Fonts zur Verfügung. Warum soll ich die von Google nehmen? Wenn ich das richtig sehe, werden die, wenn ich sie mit "import" einbinden ständig vom Google Server heruntergeladen und dabei die IP Adresse des Nutzers übertragen - warum kann ich das nicht einfach lassen? Oder wie binde ich diese Fonts statisch ein?
Die Fonts, die auf einem Computer installiert sind, kannst du nicht beeinflussen. In CSS gibst du nur einen Namen an und dann sucht der Browser den entsprechenden Font lokal raus. Wenn er nicht installiert ist, kann er nicht angezeigt werden. Daher gibt man meistens auch mehr als einen Font an, im Sinne einer Fallback-Hierarchie. Weiterhin weißt du nicht mit Sicherheit, ob der Font auch exakt derselbe ist, den du auch verwendest, oder ob er nur denselben Namen hat.

Daher macht es schon Sinn, Fonts aktiv mitzuliefern insb. wenn man Schriftarten verwendet, die mit Sicherheit eher selten installiert sind. Google-Fonts übernimmt das für dich und stellt sicher, dass die Benutzer*innen genau den Font in dem Format bekommen, das sich für ihr Endgerät gut eignet. Man kann Fonts auch selbst einbinden und ausliefern. Dazu gibt es im Netz viele Anleitungen. Das kommt in der einfachsten Variante ggf. nicht ganz an das heran, was Google Fonts macht, reicht aus meiner Sicht aber vollkommen aus. Google-Fonts stellt auch einen Katalog an Fonts bereit, aus denen man sich leicht einen aussuchen kann. Es gibt aber auch Alternativen zum selbst Herunterladen und Einbinden (z. B. https://www.fontsquirrel.com/). Das geht jetzt aber auch schon sehr in die Details des Webdesigns und weg von Python/Django.
Benutzeravatar
Whitie
User
Beiträge: 216
Registriert: Sonntag 4. Juni 2006, 12:39
Wohnort: Schulzendorf

Pitwheazle hat geschrieben: Montag 7. Februar 2022, 19:14 An dich die Frage: Wenn ich das richtig sehe, ist bei dem Code, den ich bei Github herunterlade die Datenbankinhalte nicht dabei, die lagen auf deinem Server - oder mache ich da was falsch? Könntest du mir netterweise jetzt auch den Inhalt von jeweils einem Eintrag zukommen lassen? So bekomme ich wahrscheinlich nie raus, wie du das gezaubert hast.
Da hast du recht, die Datenbank kommt nie ins Repo. Hab sie jetzt mal unter anderem Namen dazu gepackt (db_sqlite3). Der Text ist nur ein einfacher Python String, der zwei Platzhalter enthält für den hohen und den niedrigen Wert (low, high). Der Ansatz ist für komplexere Aufgaben auch nicht ausreichend. Evtl. könnte man Templates im Textfeld ablegen, die man dann rendert. Da nichts vom Benutzer da landet, sollte das OK sein.

Viele Grüße
Whitie
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

Auweh, das überfordert mich schon wieder. Was mache ich jetzt mit der Datei? Mit calc kann ich sie nicht öffnen (gibt jedenfalls keinen sinnvolle Anzeige) und ein sqlite Browser hat mir auch nicht geholfen. Ersetze ich jetzt die Datei im Projekt durch die neue Datei?
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ein sqlite browser sollte eigentlich schon helfen, denn das ist eine DB-Datei. Da sind Tabellen fuer das Django Nutzermodell drin, und Frage-Tabellen. Ich benutze dazu einfach sqlite3 auf der Kommandozeile.
Benutzeravatar
Whitie
User
Beiträge: 216
Registriert: Sonntag 4. Juni 2006, 12:39
Wohnort: Schulzendorf

Ja genau, den Unterstrich durch einen Punkt ersetzen und dann die Datei im Projekt ersetzen. Danach einen neuen Admin erstellen (python manage.py createsuperuser), damit du Zugriff hast. Direkt reinschauen muss man ja nicht, man sieht an den Models die Struktur der DB. Obwohl ein Sqlite Browser eigentlich hätte helfen sollen. Bei deinen zu erwartenden Nutzerzahlen ist Sqlite dann auch nicht mehr angesagt. Das lässt sich aber später leicht umstellen.

Viele Grüße
Whitie
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

Whitie hat geschrieben: Dienstag 8. Februar 2022, 15:20 Obwohl ein Sqlite Browser eigentlich hätte helfen sollen.
Wer hätte es gedacht: Wenn ich den Unterstrich durch einen Punkt ersetze, kann ich mit dem Browser die Datenbank erkennen und öffnen.
Aber entweder stelle ich mich wieder zu dusselig an oder wir reden aneinander vorbei. Die Struktur der Datenbank kann ich ja auch in models.py und migrations erkennen. Ich habe jetzt die bestehende db.sqlite3 Datei durch die neue ersetzt, die ist aber immer noch leer. Da ist weder in category, noch question oder result Einträge zu finden. Ich wollte ja mal einen Blick auf den Inhalt werfen - oder mache ich da wieder was verkehrt?
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Für mich waren da Inhalte drin, in der Tabelle mit fragen.
Pitwheazle
User
Beiträge: 873
Registriert: Sonntag 19. September 2021, 09:40

Was mache ich den da wieder falsch:
Zuerst habe ich die db-Datei ersetzt:
Bild
Nach runserver:
Bild
und als Admin:
Bild
Benutzeravatar
sparrow
User
Beiträge: 4195
Registriert: Freitag 17. April 2009, 10:28

Läuft doch?
Antworten