2011-03-28 31 views
5

Estoy construyendo una aplicación django que requiere un archivo javascript para algunos bits ajaxy. Me gustaría empaquetar esta aplicación para que pueda instalarla a través de easy_install o pip con el mínimo esfuerzo posible.Empaquetar archivos javascript y css en una aplicación django para reutilizar, instalar a través de pip?

Pero no estoy seguro de dónde colocar los medios estáticos, especialmente el archivo javascript. En mi máquina, tengo los medios estáticos en un directorio externo, no servido por django. Todas las referencias internas en mi plantilla apuntan a MEDIA_URL.

¿Hay un estándar para dónde empacar/incluir/adjuntar medios estáticos para aplicaciones django reutilizables? ¿Hay alguna forma de empaquetar la aplicación para que otros puedan usarla sin interferir con mover todos los archivos javascript/css, o de alguna manera automatizar eso durante el proceso de instalación?

Estoy usando django 1.2 - no he actualizado el servidor a 1.3.

Respuesta

3

Creo que el staticfiles app es exactamente lo que está buscando, desafortunadamente es nuevo en Django 1.3. ¿Eres capaz de actualizar?

A partir de los documentos:

django.contrib.staticfiles recoge los archivos estáticos de cada una de sus aplicaciones (y cualquier otro lugar que especifique) en una única ubicación que puede ser fácilmente sirve en la producción.

EDIT: De acuerdo con el comentario de Wogan, si no desea actualizar a 1.3, puede utilizar la Staticfiles standalone app. Es de lo que originalmente se derivó la aplicación de archivos estáticos de Django.

+2

Incluso si no desea usar django 1.3, puede seguir usando staticfiles como una aplicación independiente. Ver http://pypi.python.org/pypi/django-staticfiles/ – Wogan

+0

No, no puedo actualizar a 1.3, pero si puedo instalarlo como una aplicación independiente, ¡deberíamos irnos! – fitzgeraldsteele

Cuestiones relacionadas