почему GAE не обнаруживает мою страницу формы? - PullRequest
1 голос
/ 10 марта 2012

Я ВСЕГО начинающий, использующий GAE, и пытаюсь развернуть тест в GAE.

Целью этого является создание формы, в которой пользователь вводит год, месяц и день, а затем генерирует день недели, принадлежащий этой дате.

Работает нормально, когда я попробовал это в localhost: 8080, используя "dev_appserver.py.", Но после того, как я развернул его в GAE, страница "/ form" не найдена.

Это ссылка на приложение: http://yao -webapp1.appspot.com /

Я предполагаю, что это, вероятно, связано с моим файлом app.yaml, но я не уверен. Если это поможет, все три файла, включая bottle.py, находятся в одной папке.

edit * также, когда я использовал GUI-версию средства запуска GAE, страница формы тоже не работает.

Вот мои коды:

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 Ответ

1 голос
/ 11 марта 2012

/ форма - это зарезервированный URL в движке приложения: http://code.google.com/appengine/docs/python/config/appconfig.html#Reserved_URLs

Выберите другой путь, и он должен работать нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...