私はMAのハイキングコースのWebページ(Pythonで)を作成しています。私はトレイルの名前をクリックして、自分のウェブページにその場所のGoogleマップを表示させたいと思っています。私のデータベースには、緯度と経度の2つの列があります。私はPythonにはあまり新しく、これについてどうやって行くのか本当に分かりません。ここで私が書いたコードは次のとおりです。google maps APIと私のSQLを使ったPython Webアプリケーション
def getMap():
"""
This is a middleware function which returns
latitude and longitude coordinates
from our database.
"""
# connect to db
conn, cursor = getConnectionAndCursor()
# prepare SQL
sql = """
SELECT lat
AND lng
FROM hiking
WHERE name = %s
"""
parameters=(name,)
# run the SQL
cursor.execute(sql, name)
# fetch the results
data = cursor.fetchall()
# clean up
cursor.close()
conn.close()
return data
def showMap(lat,lng):
"""
Presentation layer function to display a Google map.
"""
## create an HTML table for output:
print"""
<script
src="http://maps.googleapis.com/maps/api/js">
</script>
<script>
function initialize() {
var mapProp = {
center:new google.maps.LatLng(%s,%s),
zoom:15,
mapTypeId:google.maps.MapTypeId.ROADMAP
};
var map=new google.maps.Map(document.getElementById("googleMap"), mapProp);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<div id="googleMap" style="width:500px;height:380px;"></div>
""" % (lat, lng)
if __name__ == "__main__":
# get form field data
form = cgi.FieldStorage()
debugFormData(form)
doHTMLHead("MassHike: A database of popular Massachusetts trails")
if 'name' in form:
name=form['name'].value
mapdata = getMap()
showMap()
else:
data = getAllHikes()
showAllHikes(data)
doHTMLTail()
私は今日、この上のヘルプのための指導助手を尋ねると、彼女はこれについて移動する方法が全く分かりませんでした。私のウェブページは私に ':showMap()は正確に2つの引数(0が与えられている)'というエラーを出しています。任意の提案をいただければ幸いです!
更新:SHOWMAP関数が空であったことに気づきませんでした。パラメータを入れると、このエラーが発生します。 ' exceptions.NameError'>:名前 'lat'が定義されていません ' –