Correct Static Files Setting
Hello I'm very confused about setting static files up. Every thing works fine(displays image, javascript, css) no matter what I try. So I'm confused which one is the right one. Cur
Solution 1:
The python manage.py collectstatic
command looks for all your static directories and combines those file in the directory defined by the STATIC_ROOT
setting.
In your case, STATIC_ROOT
is set to os.path.join(os.path.dirname(BASE_DIR), "static", "static")
, i.e.
your_project/static/static
So this is where the static files are being collected to. If you want them in the outer static directory, you can change STATIC_ROOT
to os.path.join(os.path.dirname(BASE_DIR), "static")
.
There is a good discussion of this in the excellent Django docs here.
There is quite a lot to take in in these settings, so here is a quick summary of each static setting as an example:
# this is the URL that django will look for static resources at
# - i.e. http://your_domain/static
# so this one is a URL used when by your web server and in template
# shortcuts.
STATIC_URL = '/static/'
# this is where Django will look for static files to collect.
# I.e. the search locations that collectstatic uses.
# 'my_project/static' in this instance. You need to add the places
# you write your static files to this directory. For example, if you
# have several places where you are writing css files, add their
# container directories to this setting.
# it is a list of places to look for static files.
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'static'),)
# this is where collectstatic will collect the static files to.
# When you hook this all into your webserver, you would tell your
# webserver that the /static/ url maps to this directory so that
# your app can find the static content. It's a directory in your
# project usually.
# it's a single directory where the static files are collected together.
STATIC_ROOT
Post a Comment for "Correct Static Files Setting"