I am getting some error while including JavaScript files in templates using Django.
Error:
TemplateSyntaxError at /
Invalid block tag on line 6: 'static'. Did you forget to register or load this tag?
Request Method: GET
Request URL: http://127.0.0.1:8000/
Django Version: 1.11.2
Exception Type: TemplateSyntaxError
Exception Value:
Invalid block tag on line 6: 'static'. Did you forget to register or load this tag?
Exception Location: C:\Python34\lib\site-packages\django\template\base.py in invalid_block_tag, line 571
Python Executable: C:\Python34\python.exe
Python Version: 3.4.4
settings.py:
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
PROJECT_DIR = os.path.dirname(__file__)
""" Internationalization """
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
""" Static files (CSS, JavaScript, Images) """
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static')
urls.py:
"""Neuclear plant URL Configuration"""
from django.conf.urls import url, include
from django.contrib import admin
from django.conf import settings
from django.conf.urls.static import static
admin.autodiscover()
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', include('plant.urls')),
]+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
base.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
{ % load static %}
<script type="text/javascript" src="{% static 'js/jquery.js' %}"></script>
</head>
<body>
<header>
<h1>Nuclear Reactor</h1>
{% if count > 0 %}
<b>Hi, {{ user.username }}</b>
<a href="{% url 'home' %}">Home</a>
<a href="{% url 'view_reactor' %}">View Reactor status</a>
<a href="{% url 'logout' %}">logout</a>
{% else %}
<a href="{% url 'login' %}">login</a> / <a href="{% url 'signup' %}">signup</a>
{% endif %}
<hr>
</header>
<main>
{% block content %}
{% endblock %}
</main>
</body>
</html>
In the above template file i am getting the error. Here I need to include the js file in this template. I have also static/js/ folder inside my project directory.
{ % load static %}there's a space between{and%