Je pense qu'il y avait un peu de facteurs, dont la combinaison a été plus grand que la somme de leurs poids.
On est tout simplement le timing: Django apparut comme la première grande vague de Rails de battage médiatique a été montée en puissance, et il a été immédiatement présenté comme une sorte de "Python réponse à des Rails". Qui a abouti à un non-négligeable nombre de globes oculaires sur le projet presque depuis le début. Le fait qu'Adrian était à la "les Serpents et les Rubis" meetup à Chicago et a obtenu de prendre part à des side-by-side parle de Rails et Django a fait beaucoup pour que.
Un autre facteur est que Django est et a toujours été un unique package installer (enfin, pas tout à fait: vous avez encore besoin d'un adaptateur de base de données, sauf si vous êtes sur Python 2.5+ et l'utilisation de SQLite, mais assez proche). Le non-Zope des solutions de rechange, le tout axé sur l'laissant composant de choix dans le développement de l'mains, un peu plus de travail juste pour arriver au point où vous pourriez faire un tutoriel de base: vous auriez besoin d'aller à la chasse vers le bas un ORM, un modèle de langue, etc., etc. et les faire tous installé et configuré. Mais c'est devenu beaucoup mieux au fil des ans, je pense que la persistance de la mémoire de qui a encore un effet.
Et Django est sorti de la porte avec de la documentation (si je peux me permettre) était bien au-dessus de la norme habituelle pour les projets open-source, et a ne cesse de s'améliorer au fil du temps. Le tutoriel, pour tous ses nombreux défauts, frappe sur un certain nombre de points forts qui font de Django utile, et le reste de la documentation a toujours été de bonne qualité, mélangeant à la fois la référence de l'API et important "comment" de bits nécessaires. Cela produit un bon out-of-the-box de l'expérience et de l'aide à la post-tutoriel courbe d'apprentissage (quelque chose qui a toujours en proie Zope).
Je pense aussi qu'il y a une perception, à tort ou à raison, que, disons, les Pylônes ou Werkzeug sont vraiment mieux pour les développeurs expérimentés qui connaissent déjà leur chemin autour de WSGI et le Python web de l'écosystème; le fait qu'ils ont tendance à être forte choix pour la prise de votre favori existant bibliothèques et de les connecter ensemble est la source de tout cela, je pense, et peut-être des coups de coude de certains nouveaux gens de plus vers Django approche intégrée. Le revers de la médaille, bien sûr, c'est que beaucoup de gens qui serais mieux apprendre plus up-front avant d'essayer de Django ne pas le faire ;)
Enfin, je pense qu'il y a quelque chose à dire à la manière de Django reinhardt été commercialisés, qui est-à-dire qu'elle n'était pas commercialisé pour une longue période de temps, ou au moins pas dans le sens que, disons, les Rails a été commercialisé. Jusqu'à ce que Django 1.0 posé, le "marketing" de l'effort principalement composés de personnes de blogs (et il y avait quelques notables incidents où les gens étaient invités à se modérer un peu), des pourparlers à PyCon et alors principalement de l'amélioration du cadre de, du bâtiment choses cool avec elle et de laisser les résultats parlent d'eux-mêmes. Maintenant, bien sûr, dans l'après-1.0 monde, nous avons le FSN et DjangoCon et orienté business consultants en faisant des séances de formation et de beaucoup de livres et de tout le reste, mais c'est encore assez nouveau.
J'attends qu'il y aura un retour de bâton, comme il y a été avec des Rails, et en fait je pense que c'est le brassage pendant un certain temps et a déjà commencé. Mais jusqu'à maintenant, je pense que les facteurs que j'ai énumérées ici sont au moins les plus importants, derrière la constante croissance de la popularité de Django a vu depuis sa sortie initiale.