Django Framework Templates Kullanımı ve İpuçları


Django Framework Templates Kullanımı ve İpuçları

Django Templates Nedir?

Django Framework templates, dinamik HTML sayfaları oluşturmak için kullanılan güçlü bir şablon motorudur. Bu sistem, Python ile yazılmış web projelerinde veri ve arayüzün ayrılmasını sağlar. Django Templates sayesinde, verilere dayalı olarak içeriklerinizi esnek bir şekilde gösterebilir, kullanıcı odaklı dinamik siteler geliştirebilirsiniz.

Temel Kullanım: Template Oluşturma ve Render Etme

Django templates kullanımına başlamak için projenizin TEMPLATES ayarında template dizinini tanımlamanız gerekir. Ardından, template dosyalarınızı .html uzantısıyla bu dizine eklersiniz. Bir view fonksiyonu ile template'i nasıl çağıracağınızı aşağıdaki gibi görebilirsiniz:

from django.shortcuts import render

def ana_sayfa(request):
    veri = {"mesaj": "Merhaba Django Templates!"}
    return render(request, "index.html", veri)

Yukarıdaki örnekte index.html dosyası, views.py tarafından template olarak dönülüyor. Template içeriğinde değişkeni göstermek ise oldukça kolaydır:

<!DOCTYPE html>
<html>
<body>
    <h2>{{ mesaj }}</h2>
</body>
</html>

Django Template Tagleri ve Filtreleri

Django Framework templates, {% %} ile taglar, {{ }} ile değişkenler yerleştirmenizi sağlar. Örneğin, bir veri listesi göstermek için:

<ul>
    {% for isim in isimler %}
        <li>{{ isim|upper }}</li>
    {% endfor %}
</ul>

Burada isimler etiketi Python sözlüğünden geliyor ve upper filtresiyle tüm metinler büyük harfe dönüştürülüyor. Ayrıca if-else yapısı gibi kontrol taglerini de kullanabilirsiniz:

{% if kullanici.is_authenticated %}
    <p>Hoşgeldin, {{ kullanici.username }}!</p>
{% else %}
    <p>Lütfen giriş yapınız.</p>
{% endif %}

Sonuç ve İleri Düzey İpuçları

Django Framework templates ile web sayfanızın görünümünü kolay ve esnek bir şekilde yönetebilirsiniz. Template miraslama (base.html gibi) ve özel filtre/tag oluşturma ile projelerinizi daha modüler ve sürdürülebilir hale getirebilirsiniz. SEO açısından şablonlarda semantik HTML etiketleri ve doğru meta kullanımı, sitenizin arama motorlarındaki başarısını artıracaktır. Django'nun template gücünü iyi kullanmak, projelerinizde hem hız hem güvenlik sağlayacaktır.