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.
verwendenDjango gilt als „Batterien enthaltenes“ Framework, und diese Batterien sind großartig. Das sind die Dinge, die mich dazu bringen, Django jedem anderen Framework vorzuziehen.
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 (meistensautomatisch), 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 Schema quasi extrapolieren können2.AlleInformationen, 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 mitsehr wenigKonfiguration 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 Rest unserer Branche scheint es vergessen zu haben. Einfach gesagt; Die Funktionalität auf Basisebene sollte auch dann möglich sein, wenn JavaScript ausfällt. 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 Modell-, Ansichts- und Controller-Entwurfsmuster verwenden; Django benennt ihre 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 Siesolltensich die generierten Migrationsdateien ansehen, bevor Sie sie ausführen,undes gibt Zeiten, in denen Sie diese Dinge manueller erledigen müssen, aber Das ist der Kern 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 USDeinmalig. 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 diesderWeg 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 das gelesen habe, hoffe ich, dass Sie Django im Hinterkopf behalten, wenn Sie das nächste Mal etwas erstellen müssen. Lass es mich wissen, wenn ich helfen kann!
Wenn Sie ein CMS benötigen, sollten Sie Kirby verwenden. Siesicherlichsollten keinen statischen Site-Generator verwenden, wenn Sie ein CMS benötigen. FFS ↩
Laravel ↩
Das obige ist der detaillierte Inhalt vonDjango ist für jeden da.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!