2011-03-28 3 views
5

Je construis une application django qui nécessite un fichier javascript pour certains bits ajax. Je voudrais emballer cette application afin qu'elle puisse être installée par via easy_install ou pip avec le moins de bruit possible.Empaquetage des fichiers javascript et css dans une application django pour une réutilisation, installez via pip?

Mais je ne suis pas sûr de savoir où placer les médias statiques, en particulier le fichier javascript. Sur ma machine, j'ai le support statique dans un répertoire externe, non servi par django. Toutes les références internes de mon modèle pointent vers MEDIA_URL.

Existe-t-il une norme pour où emballer/inclure/attacher des médias statiques pour les applications django réutilisables? Existe-t-il un moyen d'empaqueter l'application afin que les autres puissent l'utiliser sans se soucier de déplacer tous les fichiers javascript/css, ou d'une manière d'automatiser cela pendant le processus d'installation?

J'utilise django 1.2 - je n'ai pas mis à jour le serveur vers 1.3.

Répondre

3

Je pense que le staticfiles app est exactement ce que vous cherchez, malheureusement, il est nouveau dans Django 1.3. Êtes-vous en mesure de mettre à niveau?

De la documentation:

django.contrib.staticfiles recueille des fichiers statiques à partir de chacune de vos applications (et tout autre endroit que vous spécifiez) dans un seul endroit qui peut être servi facilement dans la production.

EDIT: selon le commentaire de Wogan, si vous ne voulez pas passer à 1.3, vous pouvez utiliser le Staticfiles standalone app. C'est l'origine de l'application intégrée de Django dans staticfiles.

+2

Même si vous ne souhaitez pas utiliser django 1.3, vous pouvez toujours utiliser des fichiers statiques en tant qu'application autonome. Voir http://pypi.python.org/pypi/django-staticfiles/ – Wogan

+0

Non, je ne peux pas passer à la version 1.3, mais si je peux l'utiliser en tant qu'application autonome, nous devrions être prêts à partir! – fitzgeraldsteele

Questions connexes