Flask ile Başlamak: İlk Adımlar
pip install Flask
Bu komut, Python’un paket yöneticisi olan `pip` ile Flask’ı yükleyecektir. Kurulum tamamlandığında, ilk Flask uygulamanızı yazmaya başlayabilirsiniz.
İlk Flask Uygulamanızı Yazalım
İlk olarak bir Python dosyası oluşturun (örneğin `app.py`) ve içerisine şu kodu ekleyin:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Merhaba Dünya!'
if __name__ == '__main__':
app.run(debug=True)
Ne yaptık? Gelin açıklayalım:
1. Flask'ı içe aktardık.
2. `Flask(__name__)` ile yeni bir Flask uygulaması başlattık.
3. @app.route('/') ile ana sayfa için bir route (yol) tanımladık. Bu yol kullanıcı ana sayfayı ziyaret ettiğinde çalışacak.
4. hello_world() fonksiyonu, bu yol ziyaret edildiğinde kullanıcıya 'Merhaba Dünya!' mesajını döndüren basit bir fonksiyon.
Son olarak, app.run(debug=True) komutu, uygulamanızı yerel olarak çalıştırmanızı sağlar. `debug=True` özelliği sayesinde, hatalar hakkında bilgi alabilir ve otomatik olarak uygulamanız yeniden başlatılır.
Bu adımlarla, tarayıcınızı açıp `http://127.0.0.1:5000/` adresine gittiğinizde, "Merhaba Dünya!" yazısını görmelisiniz.
Flask Uygulamanızı Geliştirmek
Aşağıda bir form oluşturma ve kullanıcının girdiği veriyi işleme örneğini bulabilirsiniz:
from flask import Flask, render_template, request
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
if request.method == 'POST':
name = request.form['name']
return f'Merhaba, {name}!'
return render_template('index.html')
if __name__ == '__main__':
app.run(debug=True)
Bu örnekte, hem GET hem de POST yöntemlerini kullandık. Eğer kullanıcı formu gönderirse, formdaki veriyi request.form['name'] ile alıyoruz. Bu formun verisini, HTML tarafında şu şekilde tanımlayabilirsiniz:
Flask Formu
Adınızı Girin
Bu formu doldurduğunuzda, kullanıcının ismini ekranda göreceksiniz. Flask ile etkileşimli uygulamalar geliştirmek çok kolay, değil mi?
Flask ve Veritabanı Kullanımı
Veritabanı bağlantısı kurmak için şu adımları takip edebilirsiniz:
1. SQLite veritabanı oluşturun.
2. Flask'ın SQLAlchemy gibi bir ORM (Object Relational Mapper) ile veritabanı bağlantısını sağlayın.
Aşağıda, Flask ve SQLAlchemy kullanarak bir veritabanı bağlantısının örneğini bulabilirsiniz:
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///data.db'
db = SQLAlchemy(app)
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(50))
@app.route('/')
def index():
user = User.query.first()
return f'İlk kullanıcı: {user.name}'
if __name__ == '__main__':
db.create_all() # Veritabanını oluşturur
app.run(debug=True)
Bu kodda, bir `User` modeli tanımladık ve bu model üzerinden veritabanına bağlandık. Uygulama çalıştırıldığında veritabanı otomatik olarak oluşturulacak.
Flask ile Güvenlik ve Yetkilendirme
Örneğin, kullanıcıların sisteme giriş yapabilmesi için Flask’ın Flask-Login uzantısını kullanabilirsiniz. Bu uzantı, kullanıcı oturumlarını yönetmek için oldukça kullanışlıdır.