如何在django模板中创建一个文件

how to create a file inside the django template

本文关键字:文件 一个 创建 django      更新时间:2023-09-26

我正在生成谷歌图表,并使用getimaguri()方法将其转换为图像。这个方法返回一个url,现在我需要将该url存储到文件中。我不知道如何在django模板中创建一个文件,以及如何将数据存储到其中。以下是我在javascript中的图表生成代码:

<script type="text/javascript">
  google.load('visualization', '1', {packages: ['corechart','table']});
  function drawVisualization() {
    // Some raw data (not necessarily accurate)
    var data = google.visualization.arrayToDataTable([
         ['Job-Names', 'Pass', 'Fail'],
             {{data.0.0|safe}}
]);
    var options = {
      title : 'Jenkins Job Details for project {{data.0.1}}',
      vAxis: {title: "Job Names" , textStyle : {fontSize : 10} },
      hAxis: {title: "Number of Builds" , ticks : [2,4,6,8,10] },
      is3D: true,
  width: 1250,
  height: 550,
      colors : ["#008000", "#cc0000"],
      pointSize: 4
    };
    var chart_div = document.getElementById('chart_div');
    var chart = new google.visualization.BarChart(chart_div);
// Wait for the chart to finish drawing before calling the getImageURI() method.
google.visualization.events.addListener(chart, 'ready', function () {
chart_div.innerHTML = '<img src="' + chart.getImageURI() + '">';
imageurl = chart.getImageURI()

 });
    chart.draw(data, options);

    //var table = new google.visualization.Table(document.getElementById('table_div'));
    //table.draw(data, {showRowNumber: false});
  }
 google.setOnLoadCallback(drawVisualization);

我需要将该imageurl存储到文件中。任何帮助都将不胜感激。

getimageuri()实际返回文件本身,uriencoded,看起来像:

data:image/png;base64,iVBORw0KGgoAA...

如果你想在服务器端存储这个图像,你必须将其发送到服务器,最好使用AJAX,然后在服务器端处理,丢弃,之前的文本,然后使用django的file函数从base64字符串创建一个图像文件。