Co to jest Flask?
Flask to lekki framework webowy dla języka Python, który jest szeroko stosowany do tworzenia aplikacji internetowych. Został stworzony przez Armina Ronachera jako część projektu Pocoo. Flask jest znany ze swojej prostoty i elastyczności, co czyni go idealnym wyborem zarówno dla początkujących, jak i doświadczonych programistów.
Podstawowe cechy Flask
Flask oferuje szereg funkcji, które ułatwiają tworzenie aplikacji webowych. Oto niektóre z najważniejszych cech:
- Minimalizm: Flask jest mikroframeworkiem, co oznacza, że dostarcza tylko podstawowe funkcje, a resztę można dodać za pomocą rozszerzeń.
- Elastyczność: Flask nie narzuca struktury projektu, co pozwala programistom na dużą swobodę w organizacji kodu.
- Łatwość użycia: Flask jest prosty w nauce i użyciu, co czyni go idealnym dla początkujących.
- Wsparcie dla rozszerzeń: Flask ma bogaty ekosystem rozszerzeń, które można łatwo zintegrować z aplikacją.
Instalacja Flask
Aby zainstalować Flask, wystarczy użyć menedżera pakietów pip. Poniżej znajduje się przykładowa komenda:
pip install Flask
Tworzenie prostej aplikacji w Flask
Tworzenie aplikacji w Flask jest bardzo proste. Poniżej znajduje się przykładowy kod, który tworzy podstawową aplikację webową:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == '__main__':
app.run(debug=True)
W powyższym przykładzie:
- Importujemy klasę
Flask
z modułuflask
. - Tworzymy instancję aplikacji Flask.
- Definiujemy trasę (route) dla strony głównej, która zwraca tekst „Hello, World!”.
- Uruchamiamy aplikację w trybie debugowania.
Rozszerzenia Flask
Flask ma bogaty ekosystem rozszerzeń, które można łatwo zintegrować z aplikacją. Oto kilka popularnych rozszerzeń:
- Flask-SQLAlchemy: Integracja z bazą danych SQLAlchemy.
- Flask-Migrate: Narzędzie do migracji bazy danych.
- Flask-WTF: Obsługa formularzy za pomocą biblioteki WTForms.
- Flask-Login: Zarządzanie sesjami użytkowników i autoryzacją.
Przykład zaawansowanej aplikacji
Poniżej znajduje się przykład bardziej zaawansowanej aplikacji, która korzysta z Flask-SQLAlchemy do zarządzania bazą danych:
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///test.db'
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String(80), unique=True, nullable=False)
email = db.Column(db.String(120), unique=True, nullable=False)
def __repr__(self):
return f''
@app.route('/')
def index():
return 'Welcome to the Flask App!'
if __name__ == '__main__':
db.create_all()
app.run(debug=True)
W powyższym przykładzie:
- Konfigurujemy aplikację Flask do korzystania z bazy danych SQLite.
- Definiujemy model
User
z polamiid
,username
iemail
. - Tworzymy wszystkie tabele w bazie danych za pomocą
db.create_all()
.
Podsumowanie
Flask to potężny i elastyczny framework webowy dla Pythona, który oferuje szeroki zakres funkcji i rozszerzeń. Jego prostota i elastyczność czynią go idealnym wyborem zarówno dla początkujących, jak i doświadczonych programistów. Dzięki bogatemu ekosystemowi rozszerzeń, Flask można łatwo dostosować do różnych potrzeb projektowych. Niezależnie od tego, czy tworzysz prostą stronę internetową, czy zaawansowaną aplikację webową, Flask dostarcza narzędzi, które ułatwiają realizację Twoich celów.