Template Hk.

php
Merhaba, daha önce'de konu açmıştım fakat ciddi manada zorluk yaşamaya başladığımdan tekrar konu açarak belki daha kolay bir yöntemi olup olmadığını merak ettim, header - content - footer olarak 3 bölüm kullanıyorum header ve footer sabit content alanı master olarak çekiyorum, header için layout controller oluşturdum diğer sayfalar için çekeceğim dataları burada oluşturup extend ediyorum fakat ekleme veya çıkartma olduğunda çok zor oluyor her sayfada tanımladığım alanları kaldırmam ya da her sayfaya yeniden ekleme yapmam gerekiyor yani bunun daha kolay bir yöntemi yokmudur örnek olarak header ve footer için x bir alanda x bir controller tanımlasak ve tüm datayı buradan çeksek, içerisinden çıkartmak istediğim olduğunda x controlleri içerisinden çıkarttığımda tüm sayfalarda'da kaldırılsa? daha önce yapmış bir arkadaş varsa örnek olarak bir kod eklese çok güzel olacak.

Cevaplar (3)


Turan Karatuğ
Software Developer - Creator of TitanMVC
2 yıl önce

Bu tip durumlar için bir ya da birkaç BaseController oluşturup, ortak dataları burada tanımlayabilirsiniz. Diğer controller'larınızı da bu base'lerden extend edebilirsiniz.
Altan Öztürk
PHP Developer
2 yıl önce

Öncelikle cevap için çok teşekkür ederim, mantık olarak bu şekilde ilerledim layout adında bir controller'ım var header ve footer ortak datalarını buradan çekiyorum ve örnek olarak anasayfa controlleri buradan extend ediliyor tabiki diğer sayfalarda öyle fakat burada şöyle bir handikap var şu an kodladığım projede çok sayfa yok yani toplasak 20 ancak vardır fakat daha kapsamlı projelerde 50 - 100 sayfa oluyor şimdi örnek olarak footer içerisine ekstra bir alan ekleme ihtiyacı doğduğunda bu 100 contrellerin içine girip hepsine layouta sonradan eklenen alanı tanımlamam gerekecek, bahsettiğim bunlarla uğraşmadan direkt sistem çalıştığında her sayfada çalışan ve view'e data gönrebilen bir controller tanımlayamazmıyız? codeigniterde ki my_controller ya da laravelde ki view composers gibi
Turan Karatuğ
Software Developer - Creator of TitanMVC
2 yıl önce

Yukarıda da bahsettiğim gibi ortak kullanılan verileri bir BaseController'daki render() methoduna gömebilir ve diğer controller'larda view'a veri göndermek için bu render() methodunu kullanabilirsiniz.

Cevap Yazın


[code=php,css,sql]kod[/code] , [url=http:...com] , [img=imaj linki] , [color=renk_kodu]metin[/color]