Frage

Ich bin ein Computerprogrammierer durch Training, bin aber schon seit einiger Zeit von der Webentwicklung weg. Ich mache ein wenig Hintergrundforschung in verschiedenen Python -Webentwicklungsrahmen. Ich verstehe, dass Django, Grok / Zope 3 und Pylone alle gute solide Frameworks sind, aber nur wenig Hintergrund haben, um mit ihnen zu arbeiten. Kann mir jemand den Unterschied in der Annäherung an jedes der Rahmenbedingungen erklären und wo man im Vergleich zu den anderen scheint?

Mein spezifischer Anwendungsfall besteht darin, eine Webanwendung zu erstellen, die Produkten auf der Grundlage einer Vielzahl von von Benutzern gelieferten Informationen Produkte empfiehlt. Daher wird ein bisschen Benutzereingabe in Form eines grundlegenden Profils, der Produktpräferenzen, versucht, soziale Beziehungen zwischen Benutzern aufzubauen. Es muss auch Mitarbeiter unterstützen, die Produkte mit beschrifteten Funktionen in das System hochladen, die dann mit den Benutzern übereinstimmen können.

Würden Sie am letzten Punkt Teile der Plone bei der Bereitstellung einer Schnittstelle für Nicht-Tech-Mitarbeiter helfen, Produkte und Beschreibungen der Produkte hochzuladen? Sind ein Stück Plone leicht zu leihen? Es scheint, als ob ich das Rad nicht neu erfinden sollte, um die Leute zu einer Möglichkeit zu haben, Artikel zum Verkauf / Empfehlungen zusammen mit einigen Metadaten hochzuladen, um die Artikel zu beschreiben. Danke für die Hilfe.

War es hilfreich?

Lösung

Basierend auf Ihrem Hintergrund und Ihrer Anforderungen raten Sie Ihnen, mit so etwas zu passen http://pinaxproject.com/ das basiert auf Django.

Pyramide (der Nachfolger von Pylons) ist ein sehr niedriges Framework, und Sie müssen entweder die Bibliotheken auswählen oder alle Ihre Anwendungscode selbst schreiben. Für jemanden, der erfahren hat, ist dies Sinn und gibt Ihnen die volle Kontrolle über Ihren Code. Aber es ist eine Art Hürde, wenn Sie von vorne anfangen und mit den verfügbaren Bibliotheken nicht vertraut sind.

Django und Grok sind beide hochrangige Frameworks, wobei Django die beliebtere Wahl ist. Wenn Sie noch nicht mit Objektdatenbanken oder URL -Durchlaufen vertraut sind, ist GROK zeitaufwändiger zu lernen.

Plone ist nicht für Ihren Anwendungsfall geeignet. Es ist ein Content -Management -System und kein allgemeines Web -Framework. Sehr wenig von den von ihnen verwendeten Bibliotheken kann in einem anderen Kontext wiederverwendet werden, sicherlich keine seiner Benutzeroberfläche. Wenn Sie ein ansprechendes Benutzererlebnis mit personalisierten Inhalten anbieten möchten, ist Plone nicht für Sie - das ist nicht das, was es zu tun hat.

Haftungsausschluss: Ich bin Release -Manager für Plone und Zope 2 / Zope Toolkit und habe Pyramide verwendet, aber nicht Django.

Andere Tipps

Dolmen -Projekt ist ein CMS, das oben auf Grok gebaut wurde. Ist sehr einfach, aber es gibt nur sehr wenige, die es verwenden. Wenn Sie mit Grok gehen, können Sie die GUI wiederverwenden.

Aber wie Hanno sagte, ist Grok zeitaufwändiger zu lernen als Django. Auch Django hat weit mehr Benutzer als Grok.

Der Vorteil der Verwendung von GROK besteht darin, dass Sie fast ohne ZCML und stattdessen Dekorateure aus der Zope -Komponentenarchitektur profitieren können.

Mit Pyramiden/Pylonen erhalten Sie ein sehr einfaches Gerüst und sonst nichts. Es ist ein entkoppeltes Framework, also können Sie die gewünschten Vorlagen verwenden (Mako, Genschi, Jinja, Cheetah). Mapping-Schema (Mapping im Django-Stil oder eine Kombination aus beiden). Sie können hier auch ZCA verwenden, wenn Sie möchten. Für den Anfang könnte dies ziemlich verwirrend oder ausführlich werden.

Django ist eine Art monolithisches Rahmen, der Ihnen eine Möglichkeit gibt, Dinge zu tun. Deshalb ist es leicht zu lernen und eine sehr gute Option. Aber meiner Erfahrung nach erreichen Sie manchmal einen Punkt, an dem Sie von den Django -Standards abweichen möchten, und es kann einfach nicht getan werden, ohne ein paar Sachen zu patchen.

Und was Zope3 betrifft, würde ich Ihnen empfehlen, eine Kopie von herunterzuladen Blauer Und se wie es für dich tut.

Als Plone -Benutzer kann ich sagen, dass das Erstellen von Inhaltsobjekten in Plone schwierig ist. Es gibt nicht viel Dokumentation darüber, wie es geht, und es ist kompliziert. Einige empfehlen, UML und spezielle Plone -Produkte zu verwenden, um es einfacher zu machen, aber dies führt zu einer weiteren Abhängigkeit.

Ich erwähne das Problem mit Inhaltsobjekten, da Ihre "Produkte" (nicht das gleiche wie ein Plone -Produkt) in Plone als Inhaltsobjekt dargestellt werden, das Sie selbst schreiben müssten.

Plone ist am besten, wenn Benutzer und Redakteure Text in Form von Nachrichtenartikeln, Pressemitteilungen, Fotos usw. eingeben und genehmigen. Wenn dies der Anwendungsfall ist, gibt es vordefinierte Inhaltsobjekte für solche Dinge, sodass man ihnen nicht selbst schreiben muss.

-Jonathan Mark

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