Webpy — небольшой удобный фреймфорк для веб-разработки на python со всем необходимым для таких задач функционалом. С помощью этого фреймворка можно быстро реализовать небольшие проекты. В этом посте мы разберем создание простейшей веб-формы, которая принимает и выводит на экран значения от пользователя.
Зачем выводить на экран введенное пользователем значение? Для тренировки. Вы тело программы вы можете вписать любой код по обработке этого значения и превратить такую форму, например, в калькулятор или простенький веб-сервис.
В этом посте не будет идти речь об установке pethon и webpy на linux и windows, сделать это и так достаточно просто.
Структура программы
Структура программы включает в себя 2 файла: главный исполняемый файл программы core.py и файл шаблона главной страницы index.html, установленный в папке «tmpl»:
/core.py
—-/tmpl:
———/tmpl/index.html
Core.py:
#подключаем модули
import web
from web import form
#Определяем адрес
urls = (
'/(.*)', 'index',
)
### Определяем папку с шаблонами (используя шаблонизатор)
render = web.template.render('tmpl/', cache=False)
app = web.application(urls, globals())
class index:
#Формируем форму из 1 поля и кнопки "Отправить"
form = form.Form(
form.Textbox("URL", description="URL"),
form.Button("submit", type="submit"),
)
def GET(self, form):
form = self.form()
return render.index(form)
def POST(self, URL):</span>
form = self.form()
if not form.validates():
return form.render()
#выводим значение введенное пользователем;
#при желдании можно вставить его обработчик
return form.d.URL</p>
if __name__ == "__main__":
app.run()
index.htm:
$def with (form) <h1>Form</h1> <form action="" method="post"> $:form.render() </form></p>
Вот и все. При желании можно вставить обработчик значения введенного пользователем в указанное место.
PS. Да, если не работает — удалите все комментарии на латинице)