Django anhand eines Beispiels lernen [geschlossen]

10

Als ich anfing, Android zu lernen, fand ich eine fantastische Reihe von YouTube- Videos von Marakana , die einen Twitter-Klon erstellten. Es führte mich durch alle Schritte und erklärte mir so die Grundlagen, gängigen Bibliotheken, Best Practices, Ressourcen usw. Ein Experte über die Schulter zu schauen, während ich eine praktische App erstellte, war für mich die absolut beste Lernmethode. Vor allem gab es mir ein Skelett, auf das ich bauen konnte. Von dort aus konnte ich weiter recherchieren und wissen, welche Fragen ich stellen sollte.

Ich suche jetzt etwas Ähnliches mit Django. Natürlich habe ich mir das offizielle Tutorial und das Django-Buch angesehen . Ersteres spannt einige Django-Muskeln, geht aber nicht durch eine vollständige App. Letzteres ist sicherlich besser, aber die App, die es erstellt, ist sehr einfach und wenn es die fortgeschritteneren Themen erreicht, bricht das Tutorial zusammen und es enthält kurze Codefragmente und dokumentationsähnliche Erklärungen.

Das Auschecken bei Amazon ist nicht besonders ermutigend. Das neueste allgemeine Django-Buch wurde vor fast zweieinhalb Jahren veröffentlicht und deckt nur Version 1.0 ab. Um fair zu sein, ich verstehe, dass dies wahrscheinlich daran liegt, dass die Online-Dokumentation ausgezeichnet ist, aber ich suche wieder einen Durchgang. Ich habe einen Funken Aufregung erlebt, als ich auf Practical Django Projects stieß , was genau so klingt, wie ich es gesucht habe. In einigen Rezensionen werden jedoch einige ungeheure Probleme behauptet - kein Quellcode, viele Fehler und keine Errata, ein völlig apathischer Autor und ein nicht reagierender Herausgeber usw.

Und so bin ich auf dem ersten Platz und brauche deinen Rat. Gibt es einen Ort, an dem ich auf der Schulter eines Riesen sitzen und von Anfang bis Ende durch ein realistisches Django-Projekt geführt werden kann? Verwenden Sie vorzugsweise eine neuere Version des Frameworks.

Yony
quelle
2
@Cyclops Die Antworten dort beantworten hier nicht die Frage nach einem Tutorial, das Sie durch ein komplettes Projekt führt.
Adam Lear
@Yony Suchst du etwas wie railstutorial.org, aber nach Django?
Adam Lear
@ Anna, ja. Das Ruby on Rails Tutorial ist eine wunderbare Arbeit. Sehr gründlich mit einem freundlichen, reaktionsschnellen Autor. Genau das suche ich mit Django.
Yony

Antworten:

11

Es ist eine gute Idee, die offiziellen Django-Tutorials auf djangoproject.com durchzuarbeiten. Diese wurden von einigen der Hauptentwickler geschrieben und werfen wichtige Probleme in Bezug auf Python / Django / DB-Versionen und die Syntaxentwicklung auf. Aber ja, die dabei erstellte Polls-App ist rudimentär. Hier sind meine Empfehlungen zu nützlichen Django-Tutorials, die die App-Erstellung beinhalten:

13 Serien von Screencasts zum Erstellen einer Django-Web-App: http://showmedo.com/videotutorials/series?name=PPN7NA155

Django am Beispiel: Code-exemplarische Vorgehensweisen für mehrere nützliche Apps http://www.lightbird.net/dbe/

Zuletzt möchte ich vorschlagen, dass Sie Practical Django Projects eine zweite Chance geben. Die zweite Ausgabe des Buches wurde veröffentlicht und das Buch ist im Bitbucket-Repository des Autors James Bennett erhältlich. (Ich bin ein neuer Benutzer, kann also nicht mehr als 2 Hyperlinks posten - bitte googeln)

venzen
quelle
Auf Ihren Rat hin habe ich beschlossen, Practical Django Projects auszuprobieren. Ich arbeite mich jetzt durch. Werde mit Feedback in Bit zurückschicken.
Yony
1
Yony, wie sieht das Buch aus? Vielen Dank.
Uros K
Leider haben mich mehrere Ereignisse dazu gebracht, Django für eine Weile fallen zu lassen. Es gibt jedoch ein vielversprechendes Projekt auf Kickstarter, das darauf abzielt, einige gründliche Django-Lektionen mit der neuesten Version des Frameworks zu erhalten, das bis Januar nächsten Jahres erstellt wurde. Ich hoffe, dass ich mich bis zum Erscheinen wieder darum kümmern kann. kickstarter.com/projects/657368266/getting-started-with-django
Yony
4

Ich denke, ein Buch, das Django besser ausführlich behandelt, ist Beginning Django E-Commerce .

Ich schlage jedoch vor, dass Sie sich die zweite Ergänzung von Practical Django Projects ansehen. Ich würde Ihnen auch raten, Django Spickzettel zu googeln. Sie erhalten ein Flussdiagramm der Methoden, auf die Sie beim Erstellen Ihrer Anwendung am häufigsten zugreifen. Die Django-Dokumentation ist wirklich fantastisch. Es gibt jedoch einige Bereiche, in denen sie fehlt, wie Sie sagten.

Ich glaube nur, dass Django für mich am Anfang so schwer war, da ich keine OOP-Erfahrung hatte und nur die vorherige Programmierung geringe Mengen an VB enthielt. HTML / CSS zählen nicht wirklich. Dann wurde mir klar, dass es django je nach Projekt wirklich so macht, dass der Entwickler nicht viel programmieren muss, wenn es um grundlegende Projekte geht.

Jetzt gibt es mir wirklich einen kreativen Funken, wenn ich die Django-Dokumentation durchsehen und verstehen kann. HTML5 und sein Canvas-Element. Es ist viel am Horizont. Django eignet sich hervorragend zum Erstellen von Informationsseiten, Präsentieren von Informationen, Lesen von Materialien, Blogs, Fotologen usw. . Wenn ich so viel wie möglich bei Python bleibe, muss ich sagen, dass ich für etwas mehr im Sinne einer echten Anwendung für flask oder web.py stimmen müsste. Django hat Tonnen von Flusen.

Ihre Anforderungen pro Sekunde können mit JS, Caching und anderen Optimierungstechniken erheblich optimiert werden. Was jedoch wirklich behindert, ist die Ausführung jeder Anforderung über mehrere Kontextprozessoren, lange Listeniterationen und komplexe Abfragesatzfilterung.

Ich bin sicher, Sie sagen gut, was ist das Problem? Gar nichts. Die Funktionalität, die Django einem Entwickler sofort bieten kann, ist unübertroffen. Das ORM ist fantastisch darin, die API- und Administrationsoberflächen für Sie zu erstellen. Um all diesen Flaum zu erhalten, muss man die Kontrolle aufgeben. Datumsbasierte generische Ansichten sind ein Lebensretter, ebenso wie wiederverwendbare Anwendungen von Drittanbietern. Djangos Popularität hilft sehr und es hat eine wunderbare Gemeinschaft. Wie ich bereits sagte, sollten Sie je nach Ziel und Programmierkenntnissen einige andere robustere Frameworks (web.py, flask) ausprobieren.

Django bietet Ihnen die Komponenten zum Erstellen von inhaltsbasierten Verwaltungssystemen für inhaltsbasierte Websites, ist jedoch nicht am besten geeignet (nicht unbedingt mangelhaft), wenn Sie eine Webanwendung in einem traditionelleren Anwendungssinn erstellen möchten. Ich sage nicht, dass Django das nicht kann. Es ist nur eine Frage der Verwendung eines Hammers, um ein Brett festzunageln, oder der Seite Ihres Schraubenschlüssels. Ich bin pro-django fyi und pro flask / web.py.

eusid
quelle