Flask ile web geliştirmeye merhaba! Bu seride, Python'un basit ve güçlü web çerçevesi Flask'ı keşfedeceğiz. Hadi, Flask'ı kurarak kendi web uygulamalarımızı yapmaya başlayalım!
Merhaba sevgili genç geliştiriciler! Bugün, Python dilini kullanarak web geliştirmenin eğlenceli bir kısmını keşfedeceğiz: Form işleme ve veri gönderme! Bu, internet üzerinde bilgi toplamanın ve kullanıcıdan bilgi almanın bir yoludur. Hazır mısınız? O zaman başlayalım!
Flask ve Web Geliştirme Nedir?
Flask, Python dilini kullanarak internet üzerinde kendi web sitelerimizi oluşturmamıza yardımcı olan bir araçtır. Web geliştirme, bilgisayarınızdan dünyaya bağlanmanın ve çeşitli bilgileri paylaşmanın harika bir yoludur.
Form Nedir?
Form, internet üzerinde bilgi toplamak veya kullanıcıdan bilgi almak için kullanılan bir araçtır. Bir çevrimiçi anket doldurduğunuzda veya bir şifre değiştirdiğinizde, genellikle bir form kullanırsınız. Biz de bugün kendi formumuzu oluşturacağız!
Flask ile Form İşleme
İlk olarak, Flask'ı bilgisayarımıza yükleyerek başlayalım. Ardından, bir form oluşturmak için Flask'ın bize sunduğu güçlü özellikleri kullanacağız. Haydi, adım adım ilerleyelim.
Adım 1: Flask'ı Yükleyelim
Önce, bilgisayarımıza Flask'ı yüklememiz gerekiyor. Bu işlem için terminal veya komut istemcisine şu komutu yazabilirsiniz:
pip install Flask
Adım 2: Flask Uygulaması Oluşturalım
Şimdi, bir Python dosyası oluşturalım. Mesela, app.py adında bir dosya. Bu dosyanın içine şu kodları ekleyelim:
from flask import Flask, render_template, request app = Flask(__name__) @app.route('/') def index(): return render_template('index.html') if __name__ == '__main__': app.run(debug=True)
Adım 3: HTML Formunu Oluşturalım
Şimdi, formumuzu oluşturmak için bir HTML dosyası ekleyelim. templates adında bir klasör oluşturun ve içine index.html adında bir dosya ekleyin:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Form İşleme</title> </head> <body> <h1>Hoş Geldiniz!</h1> <form action="/submit" method="post"> <label for="name">Adınız:</label> <input type="text" id="name" name="name" required> <br> <label for="age">Yaşınız:</label> <input type="number" id="age" name="age" required> <br> <input type="submit" value="Gönder"> </form> </body> </html>
Adım 4: Verileri İşleyelim
Formdan gelen verileri işlemek için Flask uygulamamıza bir fonksiyon ekleyelim:
@app.route('/submit', methods=['POST']) def submit(): name = request.form.get('name') age = request.form.get('age') return render_template('result.html', name=name, age=age)
Adım 5: Sonuçları Gösterelim
Son olarak, formdan gelen verileri göstereceğimiz bir başka HTML dosyası oluşturalım. templates klasörüne result.html adında bir dosya ekleyin:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Form Sonucu</title> </head> <body> <h1>Sonuçlar</h1> <p>Merhaba, {{ name }}! Yaşınız {{ age }}.</p> </body> </html>
Örnek: Robot Adı ve Yaşı
Şimdi eğlenceli bir örnekle devam edelim. Formumuz, bir robotun adını ve yaşını istiyor. Formu doldurduktan sonra, Flask uygulamanız size bir robotun selamını verecek! Mesela:
@app.route('/submit', methods=['POST']) def submit(): name = request.form.get('name') age = request.form.get('age') robot_greeting = f"Merhaba, benim adım {name} ve {age} yaşındayım. Sana hizmet etmek benim için bir onurdur!" return render_template('result.html', robot_greeting=robot_greeting)
Ve result.html dosyasında:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Robot Sonucu</title> </head> <body> <h1>Robot Selamı</h1> <p>{{ robot_greeting }}</p> </body> </html>
Sonuç
İşte bu kadar! Artık siz de Flask ile web geliştirmenin temelini oluşturan form işleme ve veri gönderme konusunu öğrendiniz. Bu beceriyi kullanarak kendi web projelerinizi hayata geçirebilirsiniz. İlerleyen zamanlarda daha fazla konuyu keşfetmek için meraklı kalın ve kodlamaya devam edin! İyi eğlenceler!