【发布时间】:2016-05-17 12:06:30
【问题描述】:
我目前正在研究我的 Django 应用程序的架构。 最终,我的目标是解析我从 Django 视图传递到模板的 JSON 对象:
观点:
tasks_queryset = TaskResponsiblePeople.objects.select_related('task')
tasks_json = serializers.serialize("json", tasks_queryset)
return render_to_response('task_management/task_list.html',
{'task_form':task_form,
'responsible_people_form':responsible_people_form,
'tasks_json':tasks_json},
context_instance=RequestContext(request))
模板:
<table stupid-attribute = {{tasks_json}}>
</table>
现在,我的问题是,有没有办法将参数传递给 Javascript,以便某些函数在不使用“愚蠢属性”的情况下在页面加载事件中呈现表格?我遇到了一个topic,它与我的问题非常相关,唯一的例外是我无法弄清楚
的含义模板的 JavaScript 部分
具体来说,谁能说清楚,在我的代码中我应该在哪里使用
{% if tags %}
var tagbs = {{ tags|safe }};
var tgs = JSON.parse(tagbs);
alert("done");
{% endif %}
从之前的讨论中,我可以使用 python 语法重写下面的代码,而不必像这样生成“脏”的 HTML:
for (var i = 0; i < data.length; i++)
{
tr = $('<tr style = "cursor:pointer"/>');
tr.append('<td><input class = "tableRowChecker" type="checkbox"></td>');
if (data[i].fields.status == 1)
tr.append("<td>" +
" <div onclick = 'change_task_status(" + data[i].pk + ')' " +
" class='glyphicon glyphicon-ok'></div></td>");
else
tr.append("<td>" +
"<div onclick = 'change_task_status(" + data[i].pk + " , false)' " +
" style = 'color:rgb(102,204,255)' class='glyphicon glyphicon-ok'></div></td>");
$('#task_table tbody').append(tr);
}
【问题讨论】:
标签: javascript python json django templates