Flask Templatelarda Koşul Kullanımı (If - Else)
2 min read

Flask Templatelarda Koşul Kullanımı (If - Else)

Flask Templatelarda Koşul Kullanımı (If - Else)

Koşullar programlamanın yön levhalarıdır. Koşullar sayesinde kodlarımıza yön verir ve doğru yolda ilerlemesini sağlarız. Flask içinde aynı şeyler geçerli olup bu yazımızda ifelse ve elif koşullarını nasıl kullanacağımızı öğreneceğiz.

Şimdiye kadar işlediğimiz dersler daha çok arayüze yönelikti ve sitemizi yavaş yavaş inşa ettik. Artık yavaştan backend kısmına dalarak kodlamalarımızı gün yüzüne çıkarma vakti geldi. Bunun için Python dan alışık olduğunuz koşullar yani if-else komutlarıyla başlayarak bir giriş yapmış olacağız.

İlk olarak gerekli route yönlendirmesini yaparak başlayalım. Örnek olarak sizde aşağıdaki route u index.py sayfanızda kullanabilirsiniz. Nasıl route ekleyeceğinizi hatırlamayanlar “Flask Static/Dinamik Url Yapısı” sayfasına hızlıca bir göz atabilirler.

# If Else Koşullar
@app.route('/ifelse')
def ifelse():
   return render_template("ifelse.html", toplam = 3)

Sayfa url adresimizi oluştururken aynı zamanda toplam isimli bir değişkenide örneklerde kullanmak için gönderiyoruz. Değer olarak rastgele 3 seçeneğini kullanacağız. Ardından yeni oluşturacağımız ifelse.html sayfamıza gerekli koşul bölümünü ekleyelim. İlgili if else koşul bölümü şu şekilde olmalıdır:

{% if [KOŞUL] %}
    [İŞLEMLER]    
{% else %}
    [İŞLEMLER]
{% endif %}

Eğer birden fazla koşulunuz varsa onun için birde elif bölümü eklemeniz gerekecektir. (Birden fazlada ekleyebilirsiniz):

{% if [KOŞUL1] %}
    [İŞLEMLER]
{% elif [KOŞUL2] %}
    [İŞLEMLER]
{% elif [KOŞUL3] %}
    [İŞLEMLER]
{% else %}
    [İŞLEMLER]
{% endif %}

Kendi örneğimize gelirsek, gönderdiğimiz toplam değeri istediğimiz değer mi diye oldukça basit bir kontrol yapalım ve ardından ekrana bilgi mesajı yazdıralım. Öyleyse ifelse.html sayfamız şu şekilde olabilir:

    <h1>If Else Koşulları</h1>  

  <h3>Toplam = {{ toplam }}</h3>


{% if toplam == 3 %}
    Toplam 3 tür
{% elif toplam == 2 %}
    Toplam 2 dir
{% else %}
    Toplam farklı bir sayı
{% endif %}

Sayfamızın çıktısı şu şekilde olacaktır:

345x215

Gördüğünüz gibi Flask için if else koşul durumlarını HTML sayfalarının içinde kullanmak oldukça kolay. Tek yapmanız gereken gerekli bloku eklemek ve koşulu kontrol etmeniz. Bu konuda kafanıza takılan yerler olursa aşağıya yorum bırakabilirsiniz..