Действительно быстрый и простой вопрос, но я не могу найти достойный ответ на этот вопрос. Каков наилучший способ передачи данных с контроллера на блок в Magento.Magento - Передача данных между контроллером и блоком
Incase это делает разницу, я загрузка макета следующим образом:
$this->loadLayout(array('default', 'myModule_default'));
$this->_initLayoutMessages('customer/session')
->_initLayoutMessages('catalog/session')
->renderLayout();
Я хотел бы добавить, что я использую реестр следующим образом:
В контроллере:
Mage::register('data', $data);
В блоке:
$data = Mage::registry('data');
Не уверен, что это лучший способ сделать это.
Спасибо, это очищает мое замешательство после появления стандартных приложений Zend MVC. –
@Neil Да, есть много путаницы там. Magento использует некоторые компоненты рамки zend, но сам по себе является каркасом. –
+1 к этому ответу. Однако, я думаю, ответ Винаи тоже хорош, особенно когда вы на начальных этапах и вы должны убедиться, что ваши данные загружаются и передаются должным образом. Лично я бы рекомендовал использовать «ультраразвязанный» метод на более позднем этапе, чтобы избежать слишком большого количества тест сразу. – Diego