Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Variable vom Controller im Viewer anzeigen
 
markus.schall
Jr. Member
 
Total Posts:  12
Joined:  2008-06-01
Reutlingen, Germany
 

Hallo zusammen,

hab ein Problem, das wahrscheinlich recht einfach zu lösen ist, steh aber irgendwie auf dem Schlauch. Hatte bisher das Symfony-Framework genutzt, wo das eigentlich recht einfach war.

ich will in einer Methode (Bsp: indexAction()) einer Variable einen Wert zuweisen. Diese Variable will ich nun im Viewer (Bsp: index.phtml) ausgeben lassen. Irgendiwe bekomm ich das nicht hin… So hatte ich das bereits probiert, bekomme aber nichts übermittelt (Versuch 1) oder immer eine weisse Seite ohne Layout (Versuch 2):

Controller (Versuch 1):

public function indexAction()
    
{
        $this
->message 'Mein Text';

        
$this->loadLayout();
        
$this->getLayout()->getBlock('form')->setFormActionMage::getUrl('*/*/post') );
        
$this->_initLayoutMessages('customer/session');
        
$this->renderLayout();
    
}

Controller (Versuch 2):

public function indexAction()
    
{
        $view 
$this->initView();
        
$view->assign('message''Mein Text');

        
$this->loadLayout();
        
$this->getLayout()->getBlock('form')->setFormActionMage::getUrl('*/*/post') );
        
$this->_initLayoutMessages('customer/session');
        
$this->renderLayout();
    
}

Viewer index.phtml:

Nachricht<?$message ?>
 
Magento Community Magento Community
Magento Community
Magento Community
 
markus.schall
Jr. Member
 
Total Posts:  12
Joined:  2008-06-01
Reutlingen, Germany
 

Oh, blöd. Falscher Thread, sorry!

 
Magento Community Magento Community
Magento Community
Magento Community
 
mzentrale1
Guru
 
Total Posts:  731
Joined:  2007-12-06
Stuttgart, Germany
 

Hi,

Dein zweiter Versuch ging schon in die richtige Richtung, es sollte so aussehen:

public function indexAction()
    
{
        

        $this
->loadLayout();
        
$this->getLayout()->getBlock('form')
->
setFormActionMage::getUrl('*/*/post') )
->
assign('message','Ein Test');
        
$this->_initLayoutMessages('customer/session');
        
$this->renderLayout();
    
}

Grüsse

 
Magento Community Magento Community
Magento Community
Magento Community
 
markus.schall
Jr. Member
 
Total Posts:  12
Joined:  2008-06-01
Reutlingen, Germany
 

Hi,

danke für die schnelle Antwort. In dem nachgeladenen Formular kann ich die Variable nun ausgeben. Gibt es auch eine Möglichkeit, die Variable in der index.phtml auszugeben?

 
Magento Community Magento Community
Magento Community
Magento Community
 
mzentrale1
Guru
 
Total Posts:  731
Joined:  2007-12-06
Stuttgart, Germany
 

Hi,

wie meinste denn das? Welche index.phtml? In welcher phtml gibst du es denn nun aus? die indexAction wird ja ausgeführt wenn du über die URL den Controller ansprichst OHNE eine explizite Action aufzurufen.

Hier rufst du den Block “form” auf.

$this->getLayout()->getBlock('form') ...

Nun kannst du im contructor des blocks form das phtml definieren

public function __construct()
    
{
        parent
::__construct();
        
$this->setTemplate('stellalena/tellafriend/tellafriend.phtml');                
    
}

Oder aber in der layout xml deines Moduls

Grüsse

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top