Frage

Ich führe ein Angebotsformular ein.Anschließend habe ich ein Modul deklariert, in dem ich eine HTML-Vorlage definiert habe, die das Formular, die berechnete Preisanzeige und das Javascript/Ajax-Skript enthält.

Ich habe auch einen Block definiert:

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

und ein Controller

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

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

Um meinen Angebotspreis anzeigen und aktualisieren zu können, muss ich einige Variablen verwenden.

Ich dachte darüber nach, sie in indexAction() zu deklarieren und zu initialisieren (für die Standardpreisanzeige) und sie in quoteAction() zu aktualisieren, das von meinem Formularskript aufgerufen wird.

Ist das der gute Weg?

Wenn sie in indexAction deklariert sind, wie kann man dann in quoteAction() und im HTML darauf verweisen?

Ich danke Ihnen für Ihre Hilfe,

Alex

War es hilfreich?

Lösung

Die globalen Variablen werden mit gesetzt Mage::register('variable', $variable).Diese Variable kann dann von überall aus aufgerufen werden $_variable = Mage::registry('variable).

Wenn Sie eine Sitzungsvariable benötigen, können Sie Folgendes verwenden:

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

Diese Variable kann später aufgerufen werden mit:

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

Ich würde sagen, dass die Sitzungs- und globalen Variablen idealerweise in den Controllern festgelegt werden.Sie können sie dann überall anrufen.

Da es sich bei den verwendeten Variablen um die Ansicht (.phtml) handelt, ist es am besten, sie im Block festzulegen.Sie können sie dann mit $this->getVariable() aufrufen.

private $_variable;
public function getVariable(){
    return $_variable
} 
public function setVariable(){
    ...logic...
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top