Flask (веб-фреймворк)

Flask — Python програмалоо тилинде веб-колдонмолорду түзүү үчүн колдонулган микрофреймворк. Ал MVC долборлоо калыбын жана  Jinja2 калып түзүүчүнү колдонот.

Микрофреймворк деп аталышынын себеби - функционалдыгынын аздыгы. Flask жөнөкөй, ошол эле учурда ядросун кеңейтүүгө умтулат. Өзүнөн өзү микрофреймворк катары көп маселе чече албайт. Бирок, ага көптөгөн ар кайсы функционалдагы кеңейтилмелерди туташтырууга болот (мисалы, маалымат базасы менен интеграция кылуу, формаларды текшерүү, серверге кеткен жүктөөлөрдү иштеп чыгуу, ар кайсы аутентификациялоо ж.б.). Бул Flask'тын эң негизги өзгөчөлүгү.

КонфигурациясыОңдоо

Баштапкы абалында Flask'та керектүү болгон конфигурациялык тууралоолор орнотулган. Келишим боюнча, калыптар жана статикалык файлдары ылдыйкы директорияларында жайгашып, тиешелүү аталыштарга ээ болушу керек (templates, static). Албетте, булардын аталышын өзгөртүп койсо болот, бирок, Flask'тын туруктуу иштешине муну кылуу сунушталбайт.

ОрнотууОңдоо

Linux системиндеОңдоо

Flask микрофреймворк Werkzeug жана Jinja2 деген сыяктуу тышкы библиотекаларга көз каранды. Werkzeug - Python веб колдонмолордун менен серверлердин ортосундагы WSGI - стандарттык интерфейсинин инструментарийи. Ал программалоого жана жайылтууга арналган. Jinja2 калыптардын көрүнүшүнө жооп берет.

Flask микрофреймворкту орнотуу үчүн Python 2.6 (же андан өйдө) жана pip колдонулат. Python 3 же андан өйдө болсо, "python3-support" бөлүмүн караш керек.

pip install flask

МисалОңдоо

Төмөндөгү код 1 файлдан турган (мисалы, "hello.py") жөнөкөй веб-колдонмону түзүп, "Hello World!" жазуусун жазып чыгарат[1].

from flask import Flask
app = Flask(__name__)

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

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

Кошумча пакеттерОңдоо

Flask пакеттери, адатта, төмөнкүдөй аталат: 

flask-пакеттин аталышы (мисалы flask-login)
 PyPi'дагы пакеттин аты жана шилтеме Түшүндүрмө Докуметациясы Автору
flask-login Колдонуучулардын сессияларын башкаруу Read the Docs Matthew Frazier
flask-sqlalchemy SQLAlchemy'ни

колдоо

Python Hosted Phil Howell
flask-wtf WTForms жөнөкөй формалары Read the Docs Hsiaoming Yang


ШилтемелерОңдоо

Колдонулган адабиятОңдоо

  1. Flask расмий документациясы (0.10)
  1. "Расмий документациясы"