I would like to get some help to pass Django variable in HTML template into Javascript variable.
I believed it would be easy, but up to now, I don't overcome to do that. Especially with a Django for loop.
I have an HTML piece of code like this :
{% for document in publication.documents.all %}
    <table class="table table-condensed">
        <tbody>
            <tr>
                <td class="col-md-1">
                    <canvas id="test{{ document.id }}"></canvas>
                </td>
            </tr>
        </tbody>
    </table>
{% endfor %}
Then, I would like to use Javascript code to display the PDF for each document.
So, I have something like this with JS :
<script src="https://mozilla.github.io/pdf.js/build/pdf.js"></script>
<script type="text/javascript">
  var document_upload = "{{ document.upload }}"; //Django variable
  pdfjsLib.getDocument('http://localhost:8000/media/'+document_upload).then(function (pdf) {
    console.log("pdf loaded");
    pdf.getPage(1).then(function (page) {
        var scale = 0.30;
        var viewport = page.getViewport(scale);
        var canvases = document.getElementsByTagName('canvas');
        Array.from(canvases).forEach((canvas) => {
            var context = canvas.getContext('2d');
            canvas.height = viewport.height;
            canvas.width = viewport.width;
            var renderContext = {
                canvasContext: context,
                viewport: viewport
            };
            page.render(renderContext);
        });
    });
  });
</script>
But nothing appears in my template.
If I make a console.log() for these :
var document_upload = "{{ document.upload }}"; //returns blank
var document_upload = {{ document.upload }}    //returns Undefined
Maybe someone could help me? 
I don't know but I think I need to add a loop in my JS too according to this Django loop {% for document in publication.documents.all %} ?
 
     
    