Инициализация и обновление VARS, используемых в PHTML.Какой правильный путь?

magento.stackexchange https://magento.stackexchange.com//questions/38054

Вопрос

Я реализую цитатую форму.Затем я объявил модуль, в котором я определил шаблон PHTML, содержащий форму, отображение вычисленного цена и сценарий JavaScript / Ajax.

Я также определил блок:

<?php
class Mine_Quotemodule_Block_Quoteformblock extends Mage_Core_Block_Template
{
     public function methodblock()
     {
         return 'informations de mon block !!';
     }
}
?>
.

и контроллер

<?php
class Mine_Quotemodule_IndexController extends Mage_Core_Controller_Front_Action
{
   public function indexAction()
   {
        $this->loadLayout();
        $this->renderLayout();
   }

   public function quoteAction()
   {
     echo 'test mamethode';
    }
}
?>
.

Чтобы иметь возможность отображать и обновить свою цену цитаты, мне нужно использовать некоторые варифы.

Я думал, объявляю и инициализацию их в индексации () (для отображения цен по умолчанию) и обновить их в квотеке (), который будет называться моим скриптом формы.

Это хороший путь?

Если заявлено в индексации, как обратиться к ним в квотеке () и в PHTML?

Спасибо за вашу помощь,

Алекс

Это было полезно?

Решение

Глобальные переменные установлены с использованием Mage::register('variable', $variable).Эта переменная может быть вызвана из любой точки, затем используя $_variable = Mage::registry('variable).

Если вам нужна переменная сеанса, вы можете использовать:

Mage::getSingleton('core/session')->setMyVariable('value of variable');
.

Эта переменная может быть вызвана позже:

$variable = Mage::getSingleton('core/session')->getMyVariable();
.

Я бы сказал, что в идеале сеанс и глобальные переменные установлены в контроллерах.Затем вы можете позвонить им где угодно.

Для используемых переменных - вид (.phtml), лучшее - это установить их в блоке.Затем вы можете позвонить им, используя $ this-> GetVariable ().

private $_variable;
public function getVariable(){
    return $_variable
} 
public function setVariable(){
    ...logic...
}
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top