Отображение представления в Zend Framework - PullRequest
0 голосов
/ 15 сентября 2011

Я никогда раньше не работал с Zend Framework, но я работал с другими (CodeIgniter, Kohana и т. Д.).Прямо сейчас меня попросили просто показать представление, которого не было, поэтому я начал изучать документацию и примеры, которые я мог найти, и я всегда находил примеры, которые используют часть модели MVC, но в этом случае мне просто нужнозагрузить представление, и я не могу понять, как это сделать.У меня есть это:

Файл: "BookController":

require_once("Initiate.php");

class BookController extends Initiate {

  public function init() {
    parent::init();
  }

  public function bookAction(){
    #$client = Zend_Auth::getInstance()->getIdentity();
    $view = new Zend_View();
    echo $this->view->render('book.phtml');

    #$this->view->assign("book", $client);
    #echo $this->view->render('book.phtml');

  }

представление называется "book.phtml" и находится в /application/views/scripts/bookapi/

Что яотсутствует

Ответы [ 3 ]

2 голосов
/ 15 сентября 2011

Если все правильно настроено с помощью MVC, ваш контроллер должен расширить Zend_Controller_Action:

class BookController extends Zend_Controller_Action
{
    public function indexAction()
    {
        $this->view->funnyText = 'This is a funny text.';
    }
}

Тогда в вашей папке application/views/scripts/book/ должен быть index.phtml. Который может выглядеть так:

<p>
    <?php echo $this->funnyText; ?>
</p>

Вот и все, больше ничего не требуется.

Btw. не имеет смысла иметь контроллер с именем book, а затем и действие с именем book

1 голос
/ 15 сентября 2011

вам не нужно самим управлять представлением, есть помощник Action Controller, который называется View Renderer. Он выполняет вашу работу за вас. Все, что вам нужно соблюдать, это соглашение об именах, т. Е. Если имя вашего контроллера 'BookController', тогда его файл представления находиться на views/scripts/book/boo.phtml.

0 голосов
/ 15 сентября 2011

Предполагая, что BookController расширяет Zend_Controller, он должен автоматически настроить представление, и вам не нужно его отображать.Ваш файл просмотра должен быть в /application/views/scripts/book/book.phtml.Следуйте указаниям Быстрый старт для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...