Kayıt Ol

Giriş


Şifremi Kaybettim

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

soru ekleme

Soru sormak için giriş yapmalısınız.

Giriş


Kayıt Ol

Merhaba, kayıt formu üzerinden kayıt olabilirsiniz. Fakat sosyal medya ile kayıt olmanızı önermekteyiz.

Django İskelet Şablonlar

Django İskelet Şablonlar

Django İnclude Yapısı

Artık web sayfaları o kadar karmaşık yapılmıyor ki, tek bir sayfanın şablon ile oluşturmak neredeyse imkansız. Bu duruma şöyle örnek verebiliriz, örneğin footer bölümümüz yani web sitenin alt bölümü her sayfada aynı kalıyorsa tekrar, her şablonda tekrar niye yazalım ? dediğiniz zaman include fonksiyonunu kullanacağız. Php dilini kullananlar bilir, aynı mantıkta çalışmaktadır.

Sırasıyla bir include yapısı oluştralım

1-) Öncelikle her sayfada sabit kullanacağımız html dosyasını oluşturalım : Örneğin ben footer.html oluşturdum.

Her sayfada sabit kullanacağım, içeriğimi belirledim.

2-) İnclude yapısını oluşturdum, şimdi istediğimiz herhangi bir sayfada rahatlıkla kullanabiliriz.

Yukarıdaki gibi istediğiniz şablona rahatlıkla çağırabilirsiniz.


Django İskelet Şablon

Bir web sitesinde sayfaların genel görünümü bir birine benzemektedir. Örneğin sayfanın üst,sağ,sol ve alt kısımları sabittir. Bunlara bazen logolar, bazen reklamları bazende içerik gezgini(navigasyon) koyarız. O halde bir web sitesinin sayfaları bir iskelet üzerine oturmaktadır. Her seferinde birtakım include etiketinin kullanılması gerektirir. Bunun yerine iskelet şablon oluşturup sonra bu iskeleti kullanarak, o anaki içerikleri iskeletin içerisine yerleştirmek daha kolay olacaktır.

  • Öncelikle İnclude yapısını oluşturalım. Footer.html kullaniyorum :

Yukarıdaka görüldüğü gibi, bir block-endblock yapısı kullandım. Bunun mantığını şöyle açıklayabiliriz:

Sabit bir şablon kullaniyoruz ama farklı bir şablon içerisine include ederken, bazı yerlerin değiştirmek istiyoruz. Bunun için en kolay ve verimli yol budur.

1-) Footer.html dosyasını, kullanacağımız şablona çağırmamız gerekiyor :

extends ifadesini, en başa koymanız gerekiyor lütfen dikkat edin!

{% extends “footer.html” %}

2-) Çağırdıktan sonra, siteadini belirleyelim :

Çıktıyı fark ediceksiniz, “Python.TC © 2016 Copyright Tüm Hakları Saklıdır.” yazacaktır.


NOT : Kısaca şöyle bir ayrım yapmamız gerekiyor :

  • Eğer, sabit bir şablon kullaniyorsak include yapısını kullanmalıyız.
  • Eğer, sabit bir şablon ama küçük değişiklerle kullanacaksak extends ve block-endblock yapısın kullanacağız.

Umarım faydalı olmuştur.

Kaynak https://docs.djangoproject.com/en/1.7/topics/templates/

Kaynağı kullanarak, türkçe kaynak oluşturdum daha detaylı bilgi için kaynağa bakınız.

Hakkında Ali YamanProfesyonel

Herzaman bilginin gücüne inanlardan oldum , araştirmalarım ve deneyimlerimlerimi sizlere sunmayı amaçlıyorum. İstanbul Üniversitesi Kontrol ve Otomasyon Öğrencisiyim Elektronik ve Programlama ile ilgim var.

Beni Takip Et

Leave a reply

Captcha Captcha güncellemek için resime tıkla