I have been using google app engine for a udacity class. I been trying to 
get some code to work but when I showed the website my python code they 
said nothing was wrong with it. They said I should look and fix or change 
the variable I call webapp into app and do the same for the YAML file. Tell 
me how to fix or change the webapp variable and the YAML file, so i can run 
my code on google app engine.
Here is mu YAML file:
application: engineapp
version: 1
runtime: python27
api_version: 1
threadsafe: yes

handlers:
- url: /favicon\.ico
  static_files: favicon.ico
  upload: favicon\.ico

- url: .*
  script: main.app

libraries:
- name: webapp2
  version: "2.5.2"


Here is my main.py (webapp variable) :

import webapp2
from cgi import escape

html = """
<form method="post">
  What is your birthday?
  <br>
  <label>Month: <input type="text" name="m" value="%(input_month)s"></label>
  <label>Day: <input type="text" name="d" value=%(input_day)s></label>
  <label>Year: <input type="text" name="y" value=%(input_year)s></label>
  <div style="color: red">%(error_msg)s</div>
  <br><br>
  <input type="submit">
</form>
"""

class RootPageHandler(webapp2.RequestHandler):
    months = [
        'January', 'February', 'March', 'April', 'May', 'June', 'July'
        'August', 'September', 'October', 'November', 'December'
    ]

    months_abbr = dict((month[:3].lower(), month) for month in months)

    def valid_month(self, user_input = None):
        if type(user_input) == unicode:
            test_value = user_input[:3].lower()
            if test_value in self.months_abbr:
                return self.months_abbr[test_value]
        return ''

    def valid_day(self, user_input = None):
        if type(user_input) == unicode and user_input.isdigit():
            number = int(user_input)
            if (number > 0 and number < 32):
                return user_input
        return ''

    def valid_year(self, user_input = None):
        if type(user_input) == unicode and user_input.isdigit():
            number = int(user_input)
            if (number >= 1900 and number <= 2020):
                return user_input
        return ''


    def write_html(self, error = '', month = '', day = '', year = ''):
        self.response.out.write(html % {
            'error_msg': error,
            'input_month': escape(month, quote = True),
            'input_day': escape(day, quote = True),
            'input_year': escape(year, quote = True)
        })


    def get(self):
        self.write_html()


    def post(self):
        month_input = self.request.get('m')
        day_input = self.request.get('d')
        year_input = self.request.get('y')

        month_valid = self.valid_month(month_input)
        day_valid = self.valid_day(day_input)
        year_valid = self.valid_year(year_input)

        if not (month_valid and day_valid and year_valid):
            self.write_html(error = "That doesn't look like a valid 
birthday",
                month = month_valid, day = day_valid, year = year_valid)
        else:
            self.redirect('/thanks')

class ThanksPageHandler(webapp2.RequestHandler):
    def get(self):
        self.response.out.write('validated')


webapp = webapp2.WSGIApplication([
    ('/', RootPageHandler),
    ('/thanks', ThanksPageHandler)
], debug=True)

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/9a7e6dda-6f94-4092-95e3-8b3dda8bef78%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to