Ich denke, die Leute neigen dazu, Django entweder für die Entwicklung altmodischer, industrietauglicher monolithischer Apps oder für APIs und die Verwendung von etwas wie React für das Frontend in Betracht zu ziehen. Ich bin hier, um Ihnen zu sagen, dass das einfache alte Django sogar für Ihre persönlichen Websites eine großartige Option ist! Wenn Sie eine Datenbank benötigen, sollten Sie meiner Meinung nach Django1.
verwenden.Django gilt als „Batterien enthaltenes“ Framework, und diese Batterien sind großartig. Das sind die Gründe, warum ich Django jedem anderen Framework vorziehe.
Das Django ORM ist ein wichtiger Grund, das Framework zu verwenden. Ich bin verblüfft, dass nicht alle Web-Frameworks ein ORM enthalten. Sofern Sie kein großer Fan davon sind, SQL von Grund auf neu zu schreiben, ist dies der richtige Weg, Apps zu erstellen. Sie definieren Modelle, erstellen Datenbankmigrationen aus diesen Modellen (meistens automatisch), führen die Migrationen auf Ihrer Datenbank durch und schon kann es losgehen! Kein Schreiben halbherziger Modelle und eine Reihe von Migrationen, bei denen Sie das Schema2 extrapolieren können. Alle Informationen, die Sie über Ihre Daten benötigen, befinden sich in Ihrer models.py-Datei und alles ergibt sich daraus.
Das ist das Große. Es ist kein CMS; Es ist eher eine GUI für das ORM. Nachdem Sie Ihre Modelle definiert haben, können Sie diese Daten mit sehr wenig Konfiguration verwalten, ohne CRUD-Code schreiben zu müssen. Es ist nicht das Frontend Ihrer Anwendung. Es ist (wahrscheinlich) kein CMS für Endbenutzer. Auf diese Weise können Administratoren problemlos Änderungen an der Website vornehmen.
Das liegt mir sehr am Herzen, aber der Großteil unserer Branche scheint es vergessen zu haben. Einfach gesagt; Die Funktionalität auf Basisebene sollte auch dann möglich sein, wenn JavaScript fehlschlägt. Ihre App sollte zumindest ohne Front-End-Skripting auskommen. Das mit einem SPA zu machen, ist ein Albtraum. Es ist trivial, dies mit einem echten Backend-Framework und einem Tool wie htmx oder Unpoly zu tun. Sie müssen nur Ihre Perspektive vom Status Quo zum gesunden Menschenverstand ändern.
Während herkömmliche Anwendungsframeworks das Entwurfsmuster „Modell, Ansicht, Controller“ verwenden; Django benennt seine Elemente etwas anders.
Dies ist ein gelöstes Problem in Django. Es ist wirklich schön! Es gibt noch viel mehr darüber zu wissen, und Sie sollten sich die generierten Migrationsdateien ansehen, bevor Sie sie ausführen, und Es gibt Zeiten, in denen Sie diese Dinge manueller erledigen müssen, aber Das ist der Knackpunkt bei der Verwendung:
./manage.py makemigrations # It tells you what it did. ./manage.py migrate # Database updated!
Das ist es! ?
Hier melde ich mich für mein eigenes kleines Projekt. Die gute Nachricht für Sie, Einzelentwickler, von dem ich annehme, dass er dies liest, ist, dass es für die nichtkommerzielle Nutzung kostenlos ist. Wenn Sie es am Ende verwenden und es Ihnen beim Erstellen einer kommerziellen Anwendung geholfen hat, kostet es nur 100 USD einmalig. Komm schon, das ist wirklich ein Wert!
Auch wenn Sie am Ende nicht das gesamte Kit verwenden, empfehle ich Ihnen dringend, einen Blick auf die Techniken zu werfen, die ich im Code verwende. Das ist eine hart erkämpfte Sache, nachdem man Django fast von Anfang an verwendet hat. Ich habe es eine Phase lang mit Docker und Postgres verwendet, aber ich glaube wirklich, dass dies der Weg für 99 % der Leute ist, die Django ausprobieren möchten. SQLite ist erstaunlich.
Leider ist dies der Hauptnachteil der Wahl von Django gegenüber anderen Optionen, die auf persönliche Websites abzielen. Mit Blaze.horse habe ich versucht, es Ihnen leicht zu machen, aber es ist immer noch komplizierter, als es sein sollte. Es gibt einige aufstrebende Projekte, die mir Hoffnung geben, wie Button und Appliku, aber ich persönlich bin vorerst mit Fly zufrieden.
Nachdem ich dies gelesen habe, hoffe ich, dass Sie Django im Hinterkopf behalten, wenn Sie das nächste Mal etwas erstellen müssen. Lassen Sie mich wissen, ob ich helfen kann!
Wenn Sie ein CMS benötigen, sollten Sie Kirby verwenden. Sie sicherlich sollten keinen statischen Site-Generator verwenden, wenn Sie ein CMS benötigen. FFS ↩
Laravel ↩
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3