Trait CellTrait
Provides cell() method for usage in Controller and View classes.
Method Summary
-
_createCell() protected
Create and configure the cell instance.
-
cell() protected
Renders the given cell.
Method Detail
_createCell() ¶ protected
_createCell(string $className, string $action, string $plugin, array $options): Cake\View\Cell
Create and configure the cell instance.
Parameters
-
string
$className The cell classname.
-
string
$action The action name.
-
string
$plugin The plugin name.
-
array
$options The constructor options for the cell.
Returns
Cake\View\Cell
cell() ¶ protected
cell(string $cell, array $data = [], array $options = []): Cake\View\Cell
Renders the given cell.
Example:
// Taxonomy\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('Taxonomy.TagCloud::smallList', ['limit' => 10]);
// App\View\Cell\TagCloudCell::smallList()
$cell = $this->cell('TagCloud::smallList', ['limit' => 10]);
The display
action will be used by default when no action is provided:
// Taxonomy\View\Cell\TagCloudCell::display()
$cell = $this->cell('Taxonomy.TagCloud');
Cells are not rendered until they are echoed.
Parameters
-
string
$cell You must indicate cell name, and optionally a cell action. e.g.:
TagCloud::smallList
will invokeView\Cell\TagCloudCell::smallList()
,display
action will be invoked by default when none is provided.-
array
$data optional Additional arguments for cell method. e.g.:
cell('TagCloud::smallList', ['a1' => 'v1', 'a2' => 'v2'])
maps toView\Cell\TagCloud::smallList(v1, v2)
-
array
$options optional Options for Cell's constructor
Returns
Cake\View\Cell
Throws
Cake\View\Exception\MissingCellException
If Cell class was not found.
BadMethodCallException
If Cell class does not specified cell action.