Pergunta

Eu sou a implementação de um formulário de cotação.Eu, então, declarou um módulo no qual eu definido um phtml modelo que contém o formulário, calculado o indicador de preço e javascript/ajax script.

Eu também definiu um bloco :

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

e um controlador de

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

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

A fim de ser capaz de exibir e atualizar o meu preço de cotação, é preciso usar algumas variáveis.

Eu pensei declarando e inicializando-los no indexAction() (para o padrão do indicador de preço) e atualizá-los em quoteAction() que será chamado pelo meu script de formulário.

É esta a boa forma?

se declarada na indexAction, como se referem a eles em quoteAction() e no phtml?

Obrigado por sua ajuda,

Alex

Foi útil?

Solução

As variáveis globais são definidas usando Mage::register('variable', $variable).Esta variável pode ser chamado a partir de qualquer lugar, em seguida, usando $_variable = Mage::registry('variable).

Se você precisa de uma variável de sessão, você pode usar :

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

Esta variável pode ser chamado mais tarde com :

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

Eu diria que, idealmente, a sessão e variáveis globais são definidas nos controladores.Em seguida, você pode chamá-los de qualquer lugar.

Para as variáveis utilizadas é a visualização..phtml), o melhor é colocá-los em bloco.Em seguida, você pode chamá-los usando $this->getVariable().

private $_variable;
public function getVariable(){
    return $_variable
} 
public function setVariable(){
    ...logic...
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a magento.stackexchange
scroll top