web-dev-qa-db-fra.com

Quelle est la meilleure bibliothèque AJAX pour Django?

Quelle bibliothèque AJAX est la meilleure pour Django et pourquoi?
Vous en cherchez un avec une grande base de données de tutoriels, livres et documentation détaillée.
Lequel est le plus facile à utiliser? Lequel est au début du développement, mais est très prometteur pour l'avenir?

Cordialement,
chriss

109
chriss

Je recommande fortement jQuery . Il existe plusieurs didacticiels sur la façon de l'implémenter.

http://lethain.com/entry/2007/dec/11/two-faced-Django-part-5-jquery-ajax/

http://lethain.com/entry/2007/dec/01/using-jquery-Django-autocomplete-fields/

http://vincentxu.net/minimal-ajax-in-Django-with-jquery-post

REMARQUE: Microsoft a également annoncé il y a quelque temps que jQuery serait le cadre côté client officiel pour ASP.NET MVC, donc il est bon de savoir indépendamment de ce framework côté serveur que vous utilisez.

70
Soviut

Je pense que c'est peut-être ce que vous recherchez:

http://dajaxproject.com/

Assez bien documenté. API simple. Très propre et agréable. Je prévois de l'utiliser davantage dans certains de mes projets. Il est indépendant de la bibliothèque JS et fonctionne bien avec jQuery si c'est votre truc.

MISE À JOUR:

Autres solutions similaires à dajaxice, mais pas standard dajax.

En fin de compte, ils fonctionnent généralement de la même manière.

  • Définissez/incluez des itinéraires URL prédéfinis.
  • Enregistrez les modèles/vues/fonctions qui seront utilisés comme sources de données.
  • Prendre plaisir.

UDATE2:

Ce conseil est super ancien. Devrait probablement rechercher d'autres solutions.

62
Derek Reynolds

Il n'y a rien à propos de Django qui rend l'une des bibliothèques plus facile ou fonctionne mieux avec le framework. Utilisez simplement celle qui correspond le mieux à votre cerveau.

Cela dit, mon sentiment est que jQuery est plus populaire dans le monde Django et c'est ce que j'utilise personnellement. En particulier, de nombreuses applications de Pinax nécessitent jQuery Quelques autres applications partagées et extraits de code pour Django:

http://www.djangosnippets.org/tags/jquery/
http://code.google.com/p/Django-ajax-validation/
http://code.google.com/p/Django-todo/
http://code.google.com/p/donita/

16
Daniel Naab

Gardez également à l'esprit que les derniers livres Django ( Développement Web Python avec Django , Apprentissage du développement de sites Web avec Django )) utilisent jQuery dans leurs tutoriels .

8
Doug

Commander Dajax :

Projet Dajax

Facile à utiliser AJAX bibliothèques pour Django

Bibliothèques rapides, faciles et légères à implémenter AJAX dans vos projets Django. Prêt à l'emploi en 5 minutes).

Dajax est un outil puissant pour développer facilement et très rapidement une logique de présentation asynchrone dans des applications Web en utilisant python et presque aucune ligne de code source JS.

Il prend en charge jusqu'à quatre des frameworks JS les plus populaires: Prototype, jQuery, Dojo et mootols.

7
denysonique

J'ai utilisé avec succès jquery, YUI et Dojo sur différents projets Django. Il n'y a rien à propos de ceux qui ont amélioré l'utilisation avec Django spécifiquement. I d'accord avec jpartogy que mochikit peut convenir Django plus que tout autre juste à cause de l'API "Pythonic" (de type torsadé). Cela dépend vraiment de ce que vous recherchez dans un framework ajax.

Personnellement, j'aime ce que jQuery peut faire avec des quantités de code données, mais le plus grand défi pour écrire du code jQuery est de le rendre lisible.

YUI est beaucoup plus verbeux que les autres frameworks car il définit une convention pour l'utilisation des espaces de noms, mais il existe des raccourcis pour écrire moins de code et évite d'essayer de faire ressembler javascript à autre chose.

Dojo essaie de faire ressembler javascript Java et d'après mon expérience est assez lent. Il a quelques widgets Nice et une implémentation javascript du Django langage de template (qui est assez utile même en dehors de Django).

J'évite personnellement les prototypes et les mootools car ils peuvent casser d'autres codes javascript (ou vice versa).

Si vous êtes nouveau sur javascript et ajax, je recommanderais jQuery car c'est le plus simple pour commencer. Mais je ne m'attends pas à ce qu'un framework js soit intégré à Django surtout parce qu'il n'y a vraiment pas besoin de ça.

4
Vasil

+1 à Soviut et Daniel pour de bonnes réponses. Jquery est un framework Nice. Outre Pinax, quelques autres "gros" Django l'utilisent: Satchmo et Review Board (qui est passé d'un autre framework ... mootools IIRC).

Il est également populaire de lancer votre propre Javascript sans utiliser de framework, par exemple le Django admin.

La seule autre suggestion que je pourrais faire est que, si vous êtes un Pythonhead très expérimenté, alors vous aimerez peut-être mochikit qui est critiqué pour être trop 'Pythonic'. Cela semble être le cadre de choix pour Turbogears mais je n'ai personnellement vu aucun projet Django l'utilisant).

2
Van Gale

D'accord, cela pourrait être subjectif car la définition de "meilleur" peut signifier différent pour chaque individu. Mais puisque vous travaillez avec Django, cela signifie que vous obtiendrez vos mains avec Python. Une bibliothèque Javascript notable qui n'est pas trop exposée est Mochikit . La bonne chose à ce sujet est qu'il a une syntaxe familière à Python programmeur (parce que le créateur est un Python programmeur). Il a assez bien écrit par écrit). TurboGears prêt à l'emploi prend en charge Mochikit.

1
Joshua Partogi

Si vous avez besoin de travailler avec AJAX dans vos projets Django avec très peu de configuration et simple à utiliser, mon offre est:

Django-ajax ( Github , Pypi )

Rapide, flexible et facile à utiliser AJAX bibliothèques pour les projets Django. Contient le décorateur ajax, le middleware ajax, les raccourcis et plus encore).

1
yceruto

L'expression "Best AJAX Library" est très subjective et dépend des préférences personnelles, du savoir-faire existant, des exigences du travail, etc., etc.

Bien que je préfère jQuery pour (presque) tout, je connais certaines personnes qui ne jurent que par Dojo ou ExtJS. Il peut y avoir des cas où vous souhaitez utiliser jQuery mais les exigences peuvent être dictées que vous utilisez ExtJS.

Tout est dit. Utilisez jQuery. roches jQuery;)

0
Mir Nazim

Django n'est pas vraiment lié au côté client. Utilisez tout ce qui vous convient. Django joue bien avec tout dans ce domaine, car il suffit de l'écrire dans les modèles.

0
sebnow