Site Loader

Merhaba Arkadaşlar, Flask Framework Dersleri serisinin bu dersinde Flask Templates mantığına değineceğim eğer bir önceki derse bakmadıysanız buradan ulaşabilirsiniz.

Bir önceki dersimizde  bir uygulama oluşturmuştuk. Oluşturduğumuz request karşılık bir fonksiyon döndürüyorduk fakat bu dersimizde bir önceki derste yazdığımız  String değer döndüren fonksiyon  değil de html dosyalarını döndüren fonksiyon yani template yazacağız böylelikle web sayfamıza görsellik katmış olacağız.

Bunun için ilk önce  render_template fonksiyonunu dahil ediyorum. Flask default olarak html dosyalarını döndürmek için templates dosyasının içindeki dosyayı geri döndürecektir.

Bunun için ben ilk olarak templates dosyasını oluşturup içine index.html dosyasını oluşturuyorum;

İndex.html  dosyası;

<!DOCTYPE html>
<html lang=“en”>
<head>
<meta charset=“UTF-8”>
<meta name=“viewport” content=“width=device-width, initial-scale=1.0”>
<meta http-equiv=“X-UA-Compatible” content=“ie=edge”>
<title>Hakkında</title>
</head>
<body>
<h2>Ana Sayfa</h2>
<p> Merhabalar<br>
Yazılım ile ilgili yazılar yazdığım Blog’uma Hoş Geldiniz
</p>

</body>
</html>

Html dosyasını oluşturduğumuza göre şimdi bu dosyayı çağıracak request() fonksiyonunu yazalım;

Bunun için  başta belirtiğim gibi ilk önce render_template fonksiyonu import ediyoruz Şimdi fonksiyonumuzu oluşturalım;

def index():
    return render_template("index.html")

 

fonksiyonu oluşturduğumuza göre şimdi bütün kodları yazalım;

from  flask import  Flask,render_template

app = Flask(__name__)
@app.route("/")

def index():
    return render_template("index.html")

if __name__=="__main__":

    app.run(debug=True)

 

66
Ana Sayfa

Eğer uygulamayı çalıştırırsak karşımıza şu şekilde bir sayfa gelecektir.

Aynı şekilde hakkında sayfasını da ekliyorum.

about.html dosyası

<!doctype html>
<html lang=“en”>
<head>
<meta charset=“UTF-8”>
<meta name=“viewport”
content=“width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0”>
<meta http-equiv=“X-UA-Compatible” content=“ie=edge”>
<title>Hakkında</title>
</head>
<body>
<h2>Hakkında</h2>
<p>

Merhaba ben Cahit İŞLEYEN<br> Fırat Üniversitesi Yazılım Mühendisliği öğrencisiyim.<br>
Kendimi bildim bileli yazılımla uğraşıyorum yok kod yazıyorum diyemeyeceğim.
Yazılımla Tanışmam Üniversitede oldu.<br> Elektrik ve Elektronik Mühendisliği okurken
C Programlama ile tanıştım ve kendimi Yazılım Mühendisliğinde buldum 🙂
Python ve Linux sever biriyim .<br>
mobilhanem.com da yazar.<br>
Sizlere yardım etmekten mutluluk duyarım: facebook, Linkedin  ve Gmail
Hoşçakalın 🙂
</p>

</body>
</html>

 

77
Hakkında Sayfası

http://localhost:5000/about adresine gittiğimizde ise bu sayfayı göreceğiz;

şimdi bütün kodları yazıp dersimizi bitirelim

from flask import Flask,render_template 
app = Flask(__name__) 

@app.route("/") 
def index(): 
    return render_template("index.html") 

@app.route("/about") 
def about(): 
    return render_template("about.html") 

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

pythonearth.com  de Flask Template konusunu anlattık.  Bir sonraki yazımızda Flask Inheritance ve Block yapısını göreceğiz. Eksik ya da yanlış gördüğünüz ve ya anlamadığınız yerler için çekinmeden ulaşabilirsiniz. Bir sonraki yazıda görüşmek üzere.

Post Author: Cahit ISLEYEN

Data Scientist at @embedica.ai

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir