为什么GAE没有检测到我的表格页面?

时间:2012-03-10 19:44:39

标签: python google-app-engine

我是一名使用GAE的初学者,我正在尝试将测试部署到GAE。

这样做的目的是创建一个用户输入年,月和日的表单,然后它将生成属于该日期的星期几。

当我在localhost:8080中使用“dev_appserver.py。”尝试它时工作正常,但在我将其部署到GAE后,找不到页面“/ form”。

这是该应用的链接:http://yao-webapp1.appspot.com/

我猜它可能与我的app.yaml文件有关,但我不确定。 如果它对任何事情都有帮助,那么包括bottle.py在内的所有三个文件都在一个文件夹中。

编辑*当我使用GAE启动器的GUI版本时,表单页面也不起作用。

以下是我的代码:

main.py

"""
Author: Yao Jiang
Filename: main.py
Copyright (c) 2012 All rights reserved.
"""

import bottle
from google.appengine.ext.webapp import util
from bottle import route, template, request
from datetime import date

@route('/')
def hello():
    return "Hello New World!"

@route('/form')
def userDate():
    if request.GET.get('userDate', '').strip():
        dayOfWeek = ['monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday'];
        year = request.GET.get('year');
        month = request.GET.get('month');
        day = request.GET.get('day');

        userDate = date(int(year), int(month), int(day));
        choice = dayOfWeek[date.weekday(userDate)];

        return "<center><h1>The day of the week for %s is %s.</h1></center>" % (userDate.strftime("%b %d, %Y"), choice);
    else:
        return template('form.tpl');

util.run_wsgi_app(bottle.default_app())

的app.yaml

application: yao-webapp1
version: 1
api_version: 1
runtime: python

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

form.tpl

%# template for the date form
<html>
    <body>
        <p>FIND THE DAY OF THE WEEK</p>
        <form action="/form" method="GET">
        Year: <input type="text" size="10" maxlength="10" name="year">
        Month: <input type="text" size="10" maxlength="10" name="month">
        Day: <input type="text" size="10" maxlength="10" name="day">        
        <input type="submit" name="userDate" value="submit">
        </form>
    </body>
</html>

1 个答案:

答案 0 :(得分:1)

/ form是应用引擎上的保留网址:http://code.google.com/appengine/docs/python/config/appconfig.html#Reserved_URLs

选择不同的路径,它应该可以正常工作。