我正在学习ajax。例如,我想要获取一些项目。由于json只包含类似dict的数据,我必须将它们渲染为复杂的html元素。
我正在考虑在哪里做渲染工作。如果在前端完成,使用javascript渲染这样复杂的html元素将是痛苦的。
所以我认为利用Django模板会更好。我需要的是使用html模板渲染它,并将整个html元素放入json中的字符串中,并返回json。因此,我的前端将轻松获取数据['元素']等渲染元素并将其附加到我的页面。
但是我不知道如何在Django中执行此操作,通常我会渲染一个html页面并直接返回它。但它如何渲染html元素并将其放入json? 或者有更好的方法吗?
答案 0 :(得分:1)
你可以做得很好。
让我们在your/html/url
说你有一些东西可以返回渲染的django模板。
然后在你的javascript中,你需要做的只是
$.ajax({
url: 'your/html/url',
action: 'get',
success: function(response) {
$("#place-you-want-answer").html(response);
}
})'
那是因为所有django端点都返回一个HTML字符串。通常当您的浏览器点击它时,它会加载整个页面,但您也可以在javascript get-request中使用它。
如果您只是在学习,这是一个很好的方法。但如果这是一个长期项目,我会认真考虑使用javascript框架。它们使对象变得更加容易。例如,React非常好。