Имея некоторые проблемы с отправкой данных из формы и обработкой ее с помощью webapp2.webapp2 - как отправить данные формы - приложение движок
Я не уверен, как обрабатывать данные из формы в webapp2 в целом, включая страницу, на которой следует отправлять данные с помощью действия формы.
Моя форма находится на странице '/ schedule/create-consult'. и я изначально тестировал отправку первых двух полей на одну страницу (то есть, имя и фамилия были отправлены в/schedule/create-consults).
Моя форма выглядит следующим образом
<form method="post" action="/schedule/create-consult">
<div class="row">
<div class="col-md-6">
<label>First Name</label>
<input class="form-control input-lg" type="text" name="first_name" />
<br/>
</div>
<div class="col-md-6">
<label>Last Name</label>
<input class="form-control input-lg" type="text" name="last_name" />
</div>
<input type="submit" value="save">
</div>
</form>
При нажатии на кнопку Сохранить, я получаю сообщение:
405 Method Not Allowed - POST-метод не допускается для данного ресурса.
Мои маршруты выглядеть
app = webapp2.WSGIApplication([
('/', MainPage),
('/schedule', SchedulePage),
('/consults', ConsultsPage),
('/schedule/create-consult', CreateConsultPage),
('/consults/john-smith-030617-0930', JohnSmithPage)
], debug=True)
Мой обработчик CreateConsultsPage выглядит так
class CreateConsultPage(webapp2.RequestHandler):
def get(self):
template = JINJA_ENVIRONMENT.get_template('/templates/create-consult.html')
self.response.out.write(template.render())
И мой app.yaml выглядит следующим образом:
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /css
static_dir: css
- url: /images
static_dir: images
- url: /js
static_dir: js
- url:/
script: main.app
- url: /schedule
script: main.app
- url: /consults
script: main.app
- url: /schedule/create-consult
script: main.app
- url: /consults/john-smith-030617-0930
script: main.app
libraries:
- name: webapp2
version: latest
- name: jinja2
version: latest
Возможный дубликат [405 Method Not Allowed Метод POST не допускается для этого Appengine ресурса Facebook App] (http://stackoverflow.com/questions/13346309/405-method-not-allowed-the- method-post-is-not-allowed-for-this-resource-appengin) –
Должен быть отступ между def get (self): и следующая строка –