我试图将数据库中的一些表作为geo-JSON返回到传单中。每行大约有4000行,但是在我的传单地图上呈现geo-JSON太慢了。我是否以错误的方式运行查询?有没有办法提高性能
def layers():
conn = psycopg2.connect( host=hostname, user=username, password=password, dbname=database )
c = conn.cursor()
c.execute("select layer, type, st_AsGeoJSON(geom4326) FROM eng_floodzone2 ")
rows = c.fetchall()
objects_list = []
for row in rows:
#geo_json={
varcons = collections.OrderedDict()
varcons["type"]= "Feature"
varcons["name"]= row[0]
varcons["properties"]= {"name": row[0]}
varcons["geometry"]= json.loads(row[2])
objects_list.append(varcons)
getfloodzone2 = json.dumps(objects_list)
c.execute("select sac_name, st_AsGeoJSON(geom4326) FROM eng_sac_pg ")
rows = c.fetchall()
objects_list = []
for row in rows:
varcons = collections.OrderedDict()
varcons["type"]= "Feature"
varcons["name"]= row[0]
varcons["properties"]= {"SAC_NAME": row[0]}
varcons["geometry"]= json.loads(row[1])
objects_list.append(varcons)
getsac = json.dumps(objects_list)
with app.app_context():
return render_template('index2.html',
floodzone2 = getfloodzone2,
sac = getsac
)
c.close()
if __name__ == '__main__':
app.run( debug= True, use_reloader=False, threaded=True)
目前没有回答
相关问题 更多 >
编程相关推荐