Frage

Nun, da ich mit web2py relativ vertraut bekommen habe, möchte ich Django macht einen Sprung.

Was sind die wichtigsten Unterschiede?

Was wäre die effizienteste Art und Weise unter Berücksichtigung web2py Wissen um loszulegen? (Es muss dazu beitragen, einige Python-Anwendungs-Framework Kenntnisse zu haben, nicht wahr?)

Bearbeiten

Auch wenn Sie beide verwendet haben, können Sie eine Meinung bieten, auf dem Sie bevorzugen und warum?

War es hilfreich?

Lösung

web2py wurde sehr viel von Django inspiriert und wenn Sie einen kennen, ist es leicht, die andere zu lernen. Wir haben einige Funktionen, die wir nicht in Django gefunden haben, einschließlich: Datenbankmigrationen (alte Tabellen automatisch), Tickets auf Fehler, ein Web-basiertes IDE, eine Datenbank-Abstraktionsschicht, die auf Google App Engine, einen rollenbasierte Zugriffskontrollmechanismus mit steckbaren Login funktioniert Module.

Eine der grundlegenden Design-Unterschiede ist, dass in Django-Anwendungen als Module implementiert sind und deshalb müssen Sie den Server neu zu starten, wenn Sie sie bearbeiten. In web2py statt Models / Ansichten / Controller sind keine Module, werden sie (nicht importiert) durch den Rahmen ausgeführt und deshalb brauchen Sie nicht den Server neu zu starten, wenn sie sich ändern.

Ein weiterer Unterschied besteht darin, dass Django ORM verwendet, web2py eine DAL verwendet. Die DAL ist etwas niedriger als das Niveau Django ORM und dies macht es näher an die SQL-Syntax (zum Beispiel ist, erlaubt links schließt sich, willkürliche Aggregate, nested wählt und Kombinationen davon), während tragbare verbleibenden (wir unterstützen 10 verschiedene Datenbanken). Die DAL auch einfach macht es dynamische Meta-Programmierung von Modellen (zB erstellen Modelle zur Laufzeit auf Daten in Datei wie eine XML- oder CSV-Datei gespeichert basieren).

zu tun

Django hat es schon länger, so dass Sie mehr Menschen geschickt im Umgang mit ihm und mehr Anwendungen eingesetzt finden.

Andere Tipps

Django = alt

Web2py = new

Alles, was Django tut, web2py tut besser. Dies liegt daran, web2py gemacht wurde lange nach django und wurde von Djangos Fehlern gelernt, obwohl es alle neuen Fehler macht;)

Der Hauptunterschied, und was mich in web2py hält:

  1. Django hat eine unglaubliche Dokumentation ... web2py so intuitiv ist, dass es nicht so viel braucht ... JEDOCH! Ich habe festgestellt, dass die Django-Dokumentation anwendbar ist web2py, für der größte Teil. Wenn Sie einen Tag verbringen und das django Buch (Ch 1-7) lesen, werden Sie auf die Idee zu bekommen, wie das ist wahr. Also in gewisser Weise besser Django sagen dokumentiert ist idiotisch. Beachten Sie auch, dass jeder Rahmen, der um geht es als eine gute Sache über die Bände der Dokumentation sprechen ... betroffen sein ... Dokumentation ist gut, nicht um mit = besser zu beginnen. Web2py bestehende Dokumentation mehr als erfüllt die Bedürfnisse von 90% der Nutzer. Die restlichen 10% müssen im Rahmen der Bibliothekscode einen Blick gehen nehmen (nicht so viel davon wie Django, und nicht so beängstigend). Auch, wenn Sie an dem Punkt, wo Sie mehr als 30% Ihrer Zeit gehen durch Bibliothekscode ausgeben, ist es Zeit, sich von Gerüsten weg und hin zu einer Sammlung von Bibliotheken (wie Pylonen). An diesem Punkt bedeutet, dass Sie nicht alles tun, die Web-Frameworks entwickelt wurde zu handhaben ...

  2. SQLForm in Django ist TextModel. Sobald Sie ein Formular erstellen, mit TextModel (= SQLForm). Viel Glück versuchen, die CSS eines einzigen Eingabefeld zu ändern! In web2py Sie tun form.element nur (), so etwas in Django. Sie müssen durch „Widget ()“ gehen, aber Widget erhalten zu können, müssen Sie zuerst durch das Eingabefeld gehen, etc ...

  3. Auch manuelle DB Migration ... Änderung Schema? Sorry ... entweder zum Herunterladen und Installieren einer separate Migration app (Süd), oder haben Sie es in Ihrer DB-Konsole manuell zu tun.

  4. Schließlich nicht aus der Box die Unterstützung für mehrere DBs ... Reifen denken ...

Mit anderen Worten ... mit Django ... hoffen, dass Sie wie Springen und Reifen.

Wenn Sie wirklich wollen von web2py vorwärts einen Sprung nehmen, versuchen Pylons ... ernst ...

Größte Nachteil web2py ist sein Alter und kleinere Code-Basis ... dies ist aber nicht unvernünftig, wenn man bedenkt Django ist wie der erste Python-Web-Framework RAILS Stil RAD Ideen umzusetzen und ist wie zweimal im Alter von web2py. Web2py ist noch in einem frühen Adopter Teil seines Lebens ... Django ist im Jenseits kritischer Masse Teil kommen zu sinken ... web2py jeden Tag kritische Masse nun in den nächsten 2 Jahren erreichen sollte, sage ich voraus.

Fazit Verbringen Sie einen Tag, lesen Sie das django Buch (ch 1-7), und lesen Sie den Pylonen Buch (Teil 1) und dann darüber nachdenken, warum Sie einen Rahmen verwenden, um mit zu beginnen. Für mich war es so viel zu tun zu bekommen, so schnell wie möglich und ohne aufzublicken Dokumentation 30% der Zeit.

Web2py erfüllt die obigen Anforderungen für mich.

habe ich einen kleinen Haus Web-App vollständig in Django, und dann anschließend vollständig in web2py. Es ist der einzige Weg, um wirklich die Unterschiede und ihre Auswirkungen auf den Entwickler Erfahrung zu verstehen.

Ich ziehe web2py, weil es mehr Komfort in die Umwelt gebaut sind als von Django angeboten, aber web2py ist viel neuer als Django, und im Nachhinein ist immer einfacher ist es besser neue Implementierungen zu machen. Da web2py Rückwärtskompatibilität gewährleistet ist, ist es durchaus plausibel, dass einige neue Tool macht ab sofort web2py veraltet in ein paar Jahren. Das ist der normale Weg der Dinge.

Wie auch immer, sie sind sehr nahe beieinander, weit mehr als jede andere Web-Framework im Vergleich zu einem der beiden. Von der Point-of-Ansicht eines Java-basierten Web-Framework zum Beispiel könnte sie fast identisch zueinander zu sein scheint.

Es hilft definitiv Wissen über einige Python-Framework zu haben.

Am effektivsten Weg, um loszulegen wäre, die verschiedenen Sektoren der beiden, das heißt Model, View, Controller, Url Dispatching, Vorlagen, Formulare zu vergleichen, etc.

Hier ist ein großer Vergleich von wenigen Frameworks. Ist sicher, es wird helfen.

ich war ein Django Programmierer vor auf web2py Einschwingzeit. Ich fand ich effizienter mit web2py, möglicherweise wegen der vernünftigen Vorgaben (impliziter Importe, Standardansichten, etc.) und die großen Unterstützung bei dem Forum .

Kurz und auf den Punkt: Web2py ist das, was Django sein sollte.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top