通过使用SQLAlchemy的Pyramid应用程序,我使用' df._tojson()'创建了一个JSON。 我试图使用d3.json导入它,但在建立此连接时遇到一些困难。它无效,我的控制台声明' TypeError:typeData.forEach不是函数'。控制台还正确显示' data.json'
中的数据SQLAlchemy生成的这个特殊JSON使用正确的格式。它甚至可以在我使用url来“数据”时使用。当我复制粘贴' data.json'的输出数据时并将其存储为静态,d3脚本完全正常。
任何人都知道为什么.forEach使用静态JSON而不是SQLAlchemy生成JSON?
@view_config(route_name='data',
renderer='json')
def data(self):
request = self.request
session = request.session
query = self.request.session.query(State)
df = pd.read_sql(query.statement, query.session.bind)
return df.to_json(orient='records')
d3.json("../data.json", function(error, typeData) {
console.log(typeData);
typeData.forEach(function(d) {
d.type = d.type.match(/\d+/)
});
'TypeError: typeData.forEach is not a function'