CI + HMVC ile Modüller Arası Bağlantı Kurmak
Merhaba,
CI HMVC ile modüller arasında bağlantı kurmayı göstericem. İlk olarak controller’den başlamak istiyorum. Bildiğiniz gibi modüller arasında bağlantı kurabilirsiniz. Bu makalede sadece controller arasındaki bağlantıdan bahsedicem.
İlk olarak CI ve HMVC’nin kurulmuş olduğu çalışan bir uygulamada bütün ayarlarınızın çalışır vaziyette olduğunu varsayıyorum. (config.php autoload.php routes.php vs..)
Önce kendinize iki tane modül oluşturun. Modules klasörü altına 2 adet modül. Dosya yapısı aşağıdaki şekilde olacaktır.
modul1
modul1/controllers
modul1/controllers/modul1.php //Controller dosyanız
modul2
modul2/controllers
modul2/controllers/modul2.php //Controller dosyanız
Şimdi ‘modul2′ modülümüz kullanacağımız modül olarak düşünelim. Yani ‘modul1′ modülünden ‘modul2′ modülünü çağırıp sonuçları görücez. Bu yüzden ben kısa bi kontroller hazırladım görmeniz için. Alttaki kodları modul2.php controllerinin içine kopyalayın.
Şimdi artık modul2.php dosyamıza dokunmayacağız. Modul1.php dosyamızı açalım ve modul2 modülümüzden controlleri görelim. Aralarındaki bağlantıyı görelim. İlk önce PHP5 sürümünü kullanmanız gerektiğini söyleyeyim. Neyse. modul1.php dosyamızı açalım ve class’ı mızı tanımlayalım.
Benim şimdi yazdığım class’ın index methoduna yazın bundan sonra vereceğim kodları. Yani size modul2 ile bağlantı kurmak için vereceğim komutları function index(){} bloğunun arasına yazmalısınız.
Burdan sonra soru cevap şeklinde gidelim. Daha anlaşılır olur.
Soru: Ben modul1′den modul2′yi nasıl çağırabilirim?
Yanıt:
Açıklama: Direk modulü çağırdık. Burada index methodunu çağıracaktır. Yani classımız ilk başladığında hangi methodu çağırıyorsa onu çağıracaktır. Bizim modül2 dosyamızda ne vardı? “echo Modul2″ yazdırıyorduk. Yani yukarıdaki kodla bu yazıyı yazdırmış oluruz.
Ekran Çıktısı:”Modul 2″
Soru: Ben modul2′den başka bir fonksiyona(method, function vs.) nasıl erişebilirim?
Yanıt:
Açıklama: Modul2.php dosyamızda method1 fonksiyonunu çağırmış olduk.
Ekran çıktısı:”2. modul 2. method”
Soru: Ben modul2′den bir method’a parametre gönderebilir miyim? Nasıl?
Yanıt:
Açıklama: Modül çağırırken virgülden sonra parametrenizi tanımlayabilirsiniz. Benim yaptığım örneğe göre $parametre değişkeninin içinde “John” değeri olursa erken çıktısı aşağıdakşi gibi olur.
Ekran Çıktısı: Welcome, John
Soru: E benim modülümde iki controller var o zaman nasıl çağırıcaz controller dosyasını?
Yanıt:
Açıklama bu şekilde uygun yerleri doldurduğunuz takdirde farklı controller dosyanızdaki method’a ulaşabileceksiniz.
Soru: Sadece görüntü mü alcaz kontrol yapamıyor muyuz?
Yanıt:
Açıklama: Method3 fonksiyonunda bize true değeri dönüyor. Bizde değeri kontrol ettirip method3 çıktısını verdik.
Ekran Çıktısı: method 3
Soru: Aynı modül altındaki model dosyasını nasıl çağırabiliriz?
Yanıt:
Soru: Farklı modül altındaki model dosyasini nasıl çağırıcaz?
Yanit:
Soru: view dosyalarını nasıl çağırıcaz?
Yanıt: Model ile aynı şekilde çağırabilirsiniz.
alıntıdır
Bunlara da Göz Atmak İsteyebilirsiniz.
<<< Önceki: Database Project (Veritabanı Projesi)
Sonraki: Git ile Revizyon Kontrolü (Git – Revision Control) >>>
Anlatım süper olmuş, Tebrik ve teşekkür ediyorum. Bu yöntemi çok beğendim. Mesela bazen yazdığımız bazı contoller method`larına tekrar ihtiyac duyarız. Bu yöntem tam buna göre. Şimdi başlamış olduğum projeni tekrar başlasaydım, kesinlikle modül yöntemiyle başlardım.
Şimdi sizden yarıdan da olsa projemi modül sistemiyle devam etdire bilmem için öneri vermenizi rica ediyorum. Önceden Saygılar, Sevgiler.
Merhaba Şirazi, şu anda senin çalıştığın projeye hakim olmadığım için herhangi bir öneri veremiyorum. Eğer daha spesifik sorun olursa yardımcı olmaya çalışırım.
Öncelikle yararlı olduğu için teşekkür ediyorum..
iki adet template yada daha fazla templateyi hmvc nasıl uygularız. ana dizinde klasör açıp css ve js dısyalırın atıp modül view içinde çalıştırmak tamam. Ama farklı birden fazla temlatede bu yöntemi nasıl yapacağız.
Yorum Bırakın!
En Son Yazılanlar
Codeigniter Dersleri
Kategoriler
Teknoloji Haberleri
Android Dersleri
Arşiv
Sitemizin QR Kodu
Yeniliklerden İlk Sizin Haberiniz Olsun
KodMerkezi.Net Facebookta
En Çok Okunanlar
En Son Aranan Kelimeler
En Çok Oy Alanlar
Etiket Bulutu
İlginizi Çekecek Siteler
Arşiv
Yönetim
En Son Yapılan Yorumlar
En Çok Okunanlar