2016-08-29 2 views
0

Ich habe gerade die Google App Engine für Python 2.7 installiert und einen Code für den Test geschrieben. Nur ein einfaches HTML-Formular. Hier ist der Code:Google App Engine HTTP Fehler 500

import webapp2 

form = """ 
<form method="post"> 
    What is your birthday? 
    <br> 
    <label> Month 
     <input type="text" name="month"> 
    </label> 

    <label> Day 
     <input type="text" name="day"> 
    </label> 

    <label> Year 
     <input type="text" name="year"> 
    </label> 

    <br> 
    <br> 
    <input type="submit"> 
</form> 
""" 

class MainPage(webapp2.RequestHandler): 
    def get(self): 
     self.response.out.write(form) 

    def post(self): 
     self.response.out.write("Succes!") 

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

Und dann habe ich versucht, ein separates Verfahren zu schreiben, die aus meiner Form schreibt, etwa so:

import webapp2 

form = """ 
<form method="post"> 
    What is your birthday? 
    <br> 
    <label> Month 
     <input type="text" name="month"> 
    </label> 

    <label> Day 
     <input type="text" name="day"> 
    </label> 

    <label> Year 
     <input type="text" name="year"> 
    </label> 

    <br> 
    <br> 
    <input type="submit"> 
</form> 
""" 

class MainPage(webapp2.RequestHandler): 
    def write_form(self): 
     self.response.out.write(form) 

    def get(self): 
     self.write_form() 

    def post(self): 
     self.response.out.write("Succes!") 

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

Nun, die Sache ist, dass der erste Code funktioniert gut, aber die zweite gibt den HTTP-Fehler 500 zurück. Ich habe das aus einem Kurs auf Udacity ausprobiert und den Code einfach von dort kopiert. Ich weiß wirklich nicht, warum es nicht funktioniert.

PS. Ich sehe diese Nachricht in Terminal (Linux): "EinzugError: Eingeklickt entspricht keiner äußeren Einrückungsebene INFO 2016-08-29 12: 17: 37,155 module.py:788] Standard:" GET/HTTP/1.1 "500 - "

Spätere Bearbeitung: Ich löste dies, indem ich einfach die Prozedur" write_form "nach der" get "-Prozedur in der MainPage-Klasse schrieb.

Antwort