Руководство по Python Bottle (Перевод) Часть 1 - Установка
PythonЭто руководство познакомит вас с концепциями и возможностями фреймворка Bottle. Данное руководство можно читать от начала и до конца, как учебный материал для ознакомления. Также можно использовать руководство как справочник для ознакомления с интересующими особенностями фреймворка Bottle.
Данное руководство является адаптированным переводом информации с ресурса BOTTLEPY.ORG от 20.04.2017г.
В руководстве местами содержатся некоторые мои комментарии и дополнения. Поэтому, это не дословный перевод, но надеюсь достаточно качественный.
Итак, приступим.
Руководство по Python Bottle (Перевод) Часть 2 - Hello World
PythonВ предыдущей части мы рассмотрели установку Bottle:
Руководство по Python Bottle (Перевод) Часть 1 — Установка
В этой части мы пойдем дальше и рассмотрим простой пример приложения сайта «Hello World».
2. Простой пример («Hello World!»)
Здесь предполагается что у вас уже установлен Bottle, либо библиотека скопирована в папку проекта.Начнем с очень простого примера «Hello World!»:
Создание Hello World на Bottle...
Python python 3 bottle руководство tutorial перевод hello world route
Руководство по Python Bottle (Перевод) Часть 3 - Маршрутизация запросов
PythonВ предыдущей части (Руководство по Python Bottle (Перевод) Часть 2 — Hello World) мы создали простое Web приложение, с одним единственным маршрутом, вот та часть кода с маршрутизацией из примера «Hello WOrld»:
@route('/hello')
def hello():
return "Hello World!"
В этом примере декоратор route() связывает URL путь с вызываемой функцией, и добавляет новый маршрут.
Теперь давайте добавим ещё один маршрут:
@route('/')
@route('/hello/<name>')
def greet(name='Незнакомец'):
return template('Здравствуй {{name}}, как дела?', name=name)
(Не забываем ипортировать необходимые библиотеки: from bottle import template)
Данный пример демонстрирует сразу две важные вещи: Вы можете привязывать более одного маршрута к одной вызываемой функции, и вы можете добавлять шаблоны URL адресов и получать доступ к параметрам по ключевым словам.
Читаль далее...
Ошибка - UnicodeEncodeError: 'mbcs' codec can't encode characters in position 0--1: inval id character
PythonОщибка: UnicodeEncodeError: 'mbcs' codec can't encode characters in position 0--1: inval id character
Происходит при попытке запустить проект командой: python manage.py runserver
Лечение:
Ищем файл: python\lib\site-packages\django\utils\autoreload.py
Затем добавляем в функцию restart_with_reloader строчку:
new_environ['PATH'] = os.path.abspath(new_environ['PATH'].encode('ascii', 'replace'))
Должно получиться как-то так:
def restart_with_reloader():
while True:
args = [sys.executable] + ['-W%s' % o for o in sys.warnoptions] + sys.argv
if sys.platform == "win32":
args = ['"%s"' % arg for arg in args]
new_environ = os.environ.copy()
new_environ["RUN_MAIN"] = 'true'
new_environ['PATH'] = os.path.abspath(new_environ['PATH'].encode('ascii', 'replace'))
exit_code = os.spawnve(os.P_WAIT, sys.executable, args, new_environ)
if exit_code != 3:
return exit_code
После этих изменений, лично у меня всё заработало, Python 3.4 + Windows 10.
Надеюсь и у вас всё получится. Комментировать...