【发布时间】:2013-03-07 01:55:53
【问题描述】:
我正在使用 Flask 作为 Web 框架,并且我正在尝试实现 Mike Dewar 所著的D3 入门一书中的第一个示例。我有一个名为run.py 的Python 脚本和两个目录templates/ 和static/,分别包含index.html 和service_status.json。不幸的是,我的代码根本没有渲染数据,也没有产生任何明显的错误。
这就是我在run.py 中的内容:
#!/usr/bin/env python
from flask import Flask, render_template, url_for
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
if __name__=="__main__":
port = 5000
app.debug = True
app.run( port=port )
这就是我在templates/index.html 中的内容:
<!DOCTYPE HTML>
<HTML>
<HEAD>
<META CHARSET="utf-8">
<SCRIPT SRC="http://d3js.org/d3.v3.min.js"></SCRIPT>
<SCRIPT>
function draw(data) {
"use strict";
d3.select("body")
.append("ul")
.selectAll("li")
.data(data)
.enter()
.append("li")
.text( function(d){
return d.name + ": " + d.status;
}
);
}
</SCRIPT>
<TITLE>MTA Data</TITLE>
</HEAD>
<BODY>
<H1>MTA Availability Data</H1>
<SCRIPT>
d3.json("{{ url_for( 'static', filename='service_status.json') }}",draw); // <---- BIG PROBLEM
</SCRIPT>
</BODY>
</HTML>
我使用的是 Windows 7、Google Chrome 和 Python 2.7。
【问题讨论】: