django-staticfiles /

Filename Size Date modified Message
206 B
219 B
47 B
98 B
1.5 KB
32 B
4.7 KB
28 B
781 B


This is a Django app that provides helpers for serving static files.

The main website for django-staticfiles is where you can also file tickets.

You can also install the in-development version of django-staticfiles with pip install django-staticfiles==dev or easy_install django-staticfiles==dev.


build_media management command

The build_media script collects the media files from all installed apps and arranges them under the STATIC_ROOT folder:

$ python build_media --all

Alternatively you can pass a list of apps to the command:

$ python build_media admin polls

In case you have two apps with the same file name and relative path you should use the --interactive option of build_media which will prompt you to choose which one to use. This is useful if you want to overwrite default media files with your custom app, for example. Remember to remove the STATIC_ROOT folder before you use this option or the script will prompt you for each file.

Please also refer to the help of the build_media management command by running:

$ python build_media --help

resolve_media management command

To quickly resolve the full file path of a media file on the filesystem, you can pass its expected URL path(s) to the resolve_media management command, e.g.:

$ python resolve_media css/base.css
Resolving css/polls.css:

If multiple locations are found that match the given path it will list all of them, sorted by its importance.

Serving static files during development


Don't use this on production servers. This feature is only intended for development. Please, don't shoot yourself in the foot. Thanks.

staticfiles provides the static file serving view staticfiles.views.serve to handle the app media, media files defined with the STATICFILES_DIRS setting and other media files found in the MEDIA_ROOT directory. Make sure your projects' contains the following snippet below the rest of the url configuration:

from django.conf import settings
if settings.DEBUG:
    urlpatterns += patterns('',
        (r'^site_media/', include('staticfiles.urls')),



Default:'' (Empty string)

The absolute path to the directory that holds static files like app media:

STATIC_ROOT = "/home/"


Default:'' (Empty string)

URL that handles the files served from STATIC_ROOT, e.g.:

STATIC_URL = '/site_media/static/'

Note that this should have a trailing slash if it has a path component.

Good: "" Bad: ""



This setting defines the additional locations the staticfiles app will traverse when looking for media files, e.g. if you use the build_media or resolve_media management command or use the static file serving view.

It should be defined as a sequence of (label, path) tuples, e.g.:

    ('special_polls', '/home/'),
    ('polls', '/home/'),



A sequence of app paths that have the media files in <app>/media, not in <app>/media/<app>, e.g. django.contrib.admin.



A sequence of directory names to be used when searching for media files in installed apps, e.g. if an app has its media files in <app>/static use:




A sequence of app paths that should be ignored when searching for media files:



v0.1.1 (2009-09-02):

  • Added README with a bit of documentation :)

v0.1.0 (2009-09-02):

  • Initial checkin from Pinax' source.
  • Will create the STATIC_ROOT directory if not existent.