[Answer]-How to manage media files on Windows?

1👍

I have a lot of comments on your code.

STATIC_ROOT location is not appropriate. With your settings collectstatic command will put everything in your project’s directory. Change it like so:

STATIC_ROOT = os.path.join(BASE_DIR, 'static_files')

But take care, that this folder is accessable (both permissions and django-settings) in production.

Use os.path.join to join folders:

STATICFILES_DIRS = (
    os.path.join(STATIC_ROOT, 'projectpackage', 'static')
)

This url pattern must be the last one and contain $:

url(r'^$', views.index, name='index'), # do not pass strings

These two url patterns do the same (docs):

urlpatterns += staticfiles_urlpatterns()
urlpatterns += static(STATIC_URL, document_root=STATIC_ROOT)

Moreover, you do not need them. Just ensure, that INSTALLED_APPS setting contains 'django.contrib.staticfiles'.

Leave a comment