Skip to content Skip to sidebar Skip to footer

Using Django Template Tags Inside External JavaScript

i have included a js file(eg:application.js) inside my html page but i couldn't able to use django template tag inside that js file ,is there any way to use django template tag dir

Solution 1:

Only if you will parse JS like a template.

If you need some variable inside JS (like STATIC_URL), it is ok to use

<script>window.staticUrl = "{{ STATIC_URL }}"</script>

or

<html data-static-url="{{ STATIC_URL }}">

in your base template


Solution 2:

No, not if you include the application.js file as

<script src="application.js"></script>

The template loader form Django will just render this to the final output of the html code. The Django template tags/filters only render on template pages - they do not apply to external sources.

You could attempt to load the JavaScript file as text into the template. So instead of referencing an external file, you would basically "paste" the code from the file into the template.


Solution 3:

You can serve your javascript as dynamic page. Create new django view to serve it (or use django.views.simple.direct_to_template) and use template with your actual javascript content.


Post a Comment for "Using Django Template Tags Inside External JavaScript"