Ben FlashMessenger görünümü helper'a ilgili iki soru var. Her iki soru da bu kodu yapmak için şunlardır:
Benim eylem yöntemi:
private $_messages; // set to $this->_helper->FlashMessenger; in init()
public function loginAction() {
// > login validation <
// Switch based on the result code
switch ($result->getCode()) {
// > snip several cases <
case Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID:
$this->_messages->addMessage("That wasn't the right password.");
break;
case Zend_Auth_Result::SUCCESS:
$this->_messages->addMessage('Logged you in successfully. Welcome back!');
$this->_helper->Redirector('index', 'home');
break;
}
// >snip<
$this->view->messages = $this->_messages->getMessages();
$this->render();
}
Benim düzeni (Zend_Layout) œkod:
<?php if (isset($this->messages) && count($this->messages) > 0) {
print_r($this->messages);
//$this->partialLoop('partials/messages.phtml', $this->messages);
} ?>
Why is the message not output the first time it is set?
Ben bu oturumlarda depolanan messenger ile yapmak için bir his var ama benim uygulaması ile yapmak eminim.
Benim form için kötü bir değer göndermek zaman ben de tekrar formu göndermek veya yenileme kadar ben bir mesaj alamadım.
What is a good way of sending this to the PartialLoop
helper?
Haberci çıktısı gibi bir şeydir:
Array(
[0] => 'Message',
[1] => 'Second message' //etc.
)
Ben (bir 'message' => 'Message string'
anahtar / değer çifti içeren bir dizi olması her mesajı gerekiyor) mesajı almak gerekiyor gibi ama bu bir PartialLoop
için iyidir.
Yerine görünümüne göndermeden önce diziyi yeniden daha iyi bir yöntem var mı?