3

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 directly inside external js file?

0

3 Answers 3

6

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

Sign up to request clarification or add additional context in comments.

Comments

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.

Comments

1

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.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.