我開始用Google App Engine和webapp2網頁框架中的python教會自己使用web開發的基礎知識。在Google App Engine中處理多個網址腳本
基本上,我想創建一個主頁,我會發布所有鏈接到不同的項目。每個鏈接將指向一個新的網址其中相關的py文件將運行。
現在,我要的只是有一個鏈接指向一個Hello World頁面。而已。對於我的生活,我無法理解如何編寫這個事件的處理程序(我是否需要哈勒?)。有人能告訴我我做錯了什麼嗎?
我的文件結構是:
+Main Directory (Folder)
- app.yaml
- index.py
+helloworld (Folder)
__init__.py
helloworld.py
app.yaml文件:
application: untitam
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url:/
script: index.app
- url: /helloworld.*
script: helloworld.app
- url: /.*
script: index.app
libraries:
- name: webapp2
version: latest
的index.py:
import webapp2
menu=""" <nav>
<ul>
<li> <a href="/helloworld">Hello World</a></li>
</ul>
</nav>
"""
class HomePage (webapp2.RequestHandler):
def get(self):
self.response.out.write(menu)
class HelloHandler(webapp2.RequestHandler):
def get(self):
pass
app = webapp2.WSGIApplication([('/', HomePage),
('/helloworld', HelloHandler)], debug=True)
和helloworld.py:
import webapp2
class HelloWorld(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
self.response.write('Hello, World!')
application = webapp2.WSGIApplication([('/helloworld', HelloWorld),], debug=True)
當我按下的Hello World鏈接我得到是指爲localhost:8080/HelloWorld的,但我看到一個空白頁。日誌說:ImportError:沒有模塊名爲app
我應該寫在index.py中以便在用戶按下鏈接後運行helloworld。請注意,index.py和helloworld.py不在同一個文件夾中。每個項目將有自己的文件夾,因爲以後我會使用HTML/CSS模板和一些JavaScript。
在此先感謝
沒有名爲app的模塊是因爲在helloworld.py中創建「應用程序」而不是「應用程序」。我建議你從一個簡單的工作示例開始,然後逐步調整它,直到它達到你想要的效果,並且/或者在這裏閱讀教程:http://webapp-improved.appspot.com/guide/routing .html –
謝謝你的回覆。我工作的教程,但無法得到我的問題的答案。我的猜測是,我不知道如何告訴python從另一個文件夾導入另一個文件。這可能是因爲我是一個noob,但瀏覽這個網站,我仍然無法弄清楚如何做到這一點。我的代碼的任何想法/筆記? – tamiros
問題是不從其他文件夾導入文件。做這個。 https://www.udacity.com/course/viewer#!/c-cs253/l-48230541/e-48689147/m-48646718 –