[英]is it possible to use javascript to get data from django models db?
[英]How to import data from django.models, to use in javascript?
我正在尝试从moodles 导入python 字典并在Javascript 中操作/打印它的属性。 但是似乎没有打印出来,我也没有收到任何错误警告。
视图.py
from chesssite.models import Chess_board
import json
def chess(request):
board = Chess_board()
data = json.dumps(board.rep)
return render(request, 'home.html', {'board': data})
这里 board.rep 是一个 python 字典 {"0a":0, "0b":0, "0c":"K0"} - 基本上是一个棋盘
主页.html
<html>
<body>
{% block content %}
<script>
for (x in {{board}}) {
document.write(x)
}
</script>
{% endblock %}
</body>
</html>
我也非常感谢一些调试技巧! 提前致谢,亚历克斯
要在 django 和 javascript 之间传输数据,请在 django 视图中转储数据并加载到 javascript 变量中。 尽量避免使用 javascript 语言构造进行 django 插值。 它不安全、容易出错,并且可能导致复杂性。 鉴于
data = json.dumps(board.rep)
在模板中
const data = JSON.parse('{{ data|safe }}')
// use normal javascript here. 'data' is a javascript array
for (let x of data) {
document.write(x)
}
Django 默认将事物转义为 HTML,这将使"
变成@quot;
。尝试将{{board}}
更改为{{board|safe}}
以防止 html 转义。或者,在视图中,您可以将字符串包装在mark_safe()
这是在django.utils.safestring
,表明该字符串不应该逃脱。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.