2017-10-09 45 views
0

我正在關注「Google App Engine With Python」中的第二章,並且我完全像它在書中一樣複製了代碼,但是我得到一個空白頁面,當我現在嘗試打開它,它給我下面的錯誤:GAE,Python - 模塊'main'沒有任何屬性應用

ImportError: <module 'main' from '...../clock/main.pyc'> has no attribute application 

我注意到它說main.pyc底有,應該使用main.py.這是一種自動生成的文件?

的app.yaml

application: clock 
version: 1 
runtime: python27 
api_version: 1 
threadsafe: yes 

handlers: 
- url: .* 
    script: main.application 

libraries: 
- name: webapp2 
    version: "2.5.2" 
- name: jinja2 
    version: "2.9.6" 
- name: markupsafe 
    version: "0.15" 

main.py

import datetime 
import jinja2 
import os 
import webapp2 

from google.appengine.api import users 

template_env = jinja2.Environment(loader=jinja2.FileSystemLoader(os.getcwd())) 

class MainPage(webapp2.RequestHandler): 
    def get(self): 
    current_time = datetime.datetime.now() 
    user = users.get_current_user() 
    login_url = users.create_login_url(self.request.path) 
    logout_url = users.create_logout_url(self.request.path) 

    template = template_env.get_template('home.html') 
    context = { 
     'current_time': current_time, 
     'user': user, 
     'login_url': login_url, 
     'logout_url': logout_url, 
    } 
    self.response.out.write(template.render(context)) 

    application = webapp2.WSGIApplication([('/', MainPage)], debug=True) 

得到任何幫助。

回答

1

application = webapp2.WSGIApplication([('/', MainPage)], debug=True)

不應當縮進;作爲編碼,它是類MainPageget方法的一部分,但它應該是一個模塊級別的變量,所以不能縮進。

+0

謝謝,這解決了這個問題。 – jb2002

相關問題