Profesyonel bir denetleyici ve bir blok arasında Geçen veriler
Gerçekten hızlı ve basit bir soru ama Profesyonel bir blok için bir kumanda veri aktarmak için en iyi yolu Nedir bu doğru dürüst bir cevap bulamıyorum.
Fark eder örtmek, aşağıdaki gibi düzen yükleme duyuyorum
$this->loadLayout(array('default', 'myModule_default'));
$this->_initLayoutMessages('customer/session')
->_initLayoutMessages('catalog/session')
->renderLayout();
Aşağıdaki gibi kayıt defteri kullanıyorum şunu eklemem gerekir
İçinde kumanda sistemi:
Mage::register('data', $data);
Blok:
$data = Mage::registry('data');
Eğer bu yapmak için en iyi yol olup olmadığından emin değil.
CEVAP
Değilsin.
Profesyonel ... ... MVC yaklaşımı, görünümü (Profesyonel davasında, görünüm Düzeni ve blok) için değişkenleri ayarlamak için denetleyici sorumluluğu değil. Denetleyicileri Modellerde değerlerini ayarlayın ve sonra da Blokları aynı modellerden oku. Dünyanın Profesyonel görüşüne göre, bir Blok denetleyicisi özel bir şey yapıyor güvenmek zorunda sıkı kavrama ve kaçınılmalıdır.
Senin kumanda işi Modelleri için bazı şeyleri yapmak, ve bu sistem düzen oluşturma süresini söyle. İşte bu kadar. Belirli bir yol sistemi Modellerinin durumuna bağlı olarak bir HTML sayfası görüntülemek için Düzen/Blok işini.
Eğer geleneksel bir PHP MVC davranışları taklit etmek isteseydim, yapardım
Basit bir Model sınıfı
Varien_Object
miras oluşturunDenetleyici olarak, o nesne
Mage::getSingleton('foo/bar')
kullanarak başlatılamadıModel sihirli alıcı/belirleyiciler kullanarak (
Varien_Object
devralan nesneleri bu olsun) ayarlanmış değerler, veyasetData
, vb.Blok, Modeli tekrar
Mage::getSingleton('foo/bar')
ile oluşturmak ve değerlerini okuyabilir.
Mage::getSingleton(...)
ile bir Model örneğini Profesyonel nesnesi başlatılamadıbir singleton olarak. Bu yüzden, eğer yeniden oluşturmak bir nesne (tekrar Mage::getSingleton('foo/bar')
ile) aynı nesneyi geri almak.
Açısal JS denetleyicileri arasında geç...
Laravel 4'te kapanması için geçen veri...
Sayfadan sayfaya geçen veriler...
Nasıl bir denetleyici işlevi görünümle...
Görünüm arasında geçen Veri Denetleyic...