Flask

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Flask
Flask logo.svg
Тип Web framework
Розробник Армін Ронакер
Стабільний випуск 0.12 (21 грудня 2016; 358 днів тому[1])
Версії 0.11[2]
Репозиторій https://github.com/pallets/flask, git://github.com/mitsuhiko/flask.git
Операційна система Cross-platform
Написано на Python
Ліцензія BSD
flask.pocoo.org

Flask — мікрофреймворк для веб-додатків, створений з використанням Python. Його основу складає інструментарій Werkzeug та рушій шаблонів Jinja2. Поширюється відповідно до умов ліцензії BSD.

Станом на грудень 2016 року стабільна версія Flask має номер 0.12.[3] Flask використовується для розробки таких проектів як Pinterest,[4] LinkedIn,[5] а також сторінка спільноти Flask.[6]

Flask називається мікрофреймворком, оскільки він не вимагає спеціальних засобів чи бібліотек.[7] У ньому відсутній рівень абстракції для роботи з базою даних, перевірки форм або інші компоненти, які надають широковживані функції за допомогою сторонніх бібліотек. Однак, Flask має підтримку розширень, які забезпечують додаткові властивості таким чином, наче вони були доступні у Flask із самого початку. Існують розширення для встановлення об'єктно-реляційних зв'язків, перевірки форм, контролю процесу завантаження, підтримки різноманітних відкритих технологій аутентифікації та декількох поширених засобів для фреймворку. Розширення оновлюються частіше аніж базовий код.[8]

Історія[ред.ред. код]

Flask створено Арміном Ронакером у 2010 році в рамках діяльності проекту Pocoo.[9]

"Все починалось як першоквітневий жарт, проте заживши великої слави, проект став по праву серйозним додатком."
"It came out of an April Fool's joke but proved popular enough to make into a serious application in its own right."[10][11][12]

Flask базується на засобі Werkzeug WSGI а також рушієві шаблонів Jinja2, що їх було створено як проекти Pocoo у 2007 та 2008 роках відповідно, коли Ронакер та Ґеорґ Брандл створювали систему дошки оголошень на Python.[13]

Незважаючи на відсутність головного релізу, Flask став надзвичайно популярним серед шанувальників Python. Станом на середину 2016 року, він був найбільш популярним веб-фреймворком Python на GitHub.[14]

Властивості[ред.ред. код]

  • Містить сервер для розробки та відлагоджувач
  • Вбудована підтримка юніт-тестів
  • Управління запитами RESTful
  • Використовує шаблони Jinja2 
  • Має підтримку безпечних куків (сесії на стороні клієнта)
  • 100% відповідність WSGI 1.0
  • Підтримка Unicode
  • Докладна документація
  • Сумісність з Google App Engine
  • Наявність розширень для забезпечення бажаної поведінки

Приклад[ред.ред. код]

Даний код демонструє простий веб-додаток, який показує фразу "Hello World!":

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()

References[ред.ред. код]

  1. https://pypi.python.org/pypi/Flask/0.12
  2. Flask 0.11 Released
  3. PyPI Flask. Python Package Index. 2016-06-27. Процитовано 2015-06-27. 
  4. What challenges has Pinterest encountered with Flask?
  5. Rachel Sanders: Developing Flask Extensions - PyCon 2014
  6. Community web page for Flask
  7. Flask Foreword. 
  8. Flask Extensions. 
  9. Pocoo team. 
  10. Ronacher, Armin. Opening the Flask. Процитовано 2011-09-30. 
  11. Ronacher, Armin (3 April 2010). April 1st Post Mortem. Armin Ronacher's Thoughts and Writings. Процитовано 2015-07-25. 
  12. Denied: the next generation python micro-web-framework (April Fools page). Процитовано 2011-09-30. 
  13. Pocoo History. 
  14. Python libraries by GitHub stars.