Zeta Components Manual :: Docs For Class ezcMvcView
MvcTools::ezcMvcView
Class ezcMvcView
The abstract view that you need to inherit from to supply your view zones.
Source for this file: /MvcTools/src/view.php
Version: | //autogentag// |
Member Variables
protected ezcMvcRequest |
$request
Holds the request object |
protected ezcMvcResult |
$result
Holds the result object, that's the result of all the views. |
Method Summary
public ezcMvcView |
__construct(
$request
, $result
)
Creates the view object |
public ezcMvcResponse |
createResponse(
)
This method is called from the dispatched to create the rendered response from the controller's result. |
protected mixed |
createResponseBody(
)
Creates a controller from the set of routes. |
public abstract array(ezcMvcViewHandler) |
createZones(
$layout
)
The user-implemented that returns the zones. |
Methods
__construct
Creates the view object
Parameters:
Name | Type | Description |
---|---|---|
$request |
ezcMvcRequest | |
$result |
ezcMvcResult |
createResponse
This method is called from the dispatched to create the rendered response from the controller's result.
It calls the createResponseBody() to do the actual rendering. If any exception is thrown in any of the view handlers, this method catches it and returns that exception object to the dispatcher. The dispatcher must therefore check whether an exception object was returned. In case there was an exception, the dispatcher can take appropriate actions such as rendering a fatal error template.
If everything goes well, this method returns an ezcMvcResponse object with the headers from the $result, and the response body from the processed views.
createResponseBody
Creates a controller from the set of routes.
This method is run by the createResponse() method to obtain a rendered result from data from the controller. It uses the user implemented createZones() method from the inherited class to fetch the different zones of the view, and then loops over these zones in order. Each zone's results are made available to subsequent zones. Each zone will be processed by a view handler of the ezcMvcViewHandler class.
Exceptions:
Type | Description |
---|---|
ezcBaseValueException |
when one of the returned zones was not actually an object implementing the ezcMvcViewHandler interface. |
ezcMvcNoZonesException |
when there are no zones defined. |
createZones
The user-implemented that returns the zones.
This method creates all the zones that are needed to render a view. A zone is an array of elements that implement a view handler. The view handlers do not have to be of the same type, as long as they implement the ezcMvcViewHandler interface.
The $layout parameter can be used to determine whether a "page layout" should be added to the list of zones. This can be useful in case you're incorporating many different applications. The $layout parameter will be set to true automatically for the top level createZones() method, which can then chose to add zones from other views as well. The createZones() methods from those other views should have the $layout parameter set to false.
Parameters:
Name | Type | Description |
---|---|---|
$layout |
bool |