Django STATIC_URL is not working

thlgood picture thlgood · Jul 27, 2012 · Viewed 8.8k times · Source

Django version is 1.4. I had read the official document, and googled my problem.

first I had followed the official document Managing static files added this in settings.py:

TEMPLATE_CONTEXT_PROCESSORS = (
  'django.core.context_processors.debug',
  'django.core.context_processors.i18n',
  'django.core.context_processors.media',
  'django.core.context_processors.static',
  'django.contrib.auth.context_processors.auth',
  'django.contrib.messages.context_processors.messages',
)

In my template:

<link href="{{ STATIC_URL }}css/main.css" ...>

but, in my broswer is:

<link href="css/main.css" ...> (Just render `STATIC_URL` as empty)

My settings is:

STATIC_ROOT = os.path.join(PROJECT_PATH, 'static')
STATIC_URL = '/static/'

in my views

def register(request):
    ...
    return render_to_response('register.html', {'errors':errors})

Answer

Pascal picture Pascal · Jul 27, 2012

Change

return render_to_response('register.html', 'errors':errors)

to

return render_to_response('register.html', {'errors': errors}, RequestContext(request))