ListView
API reference › yii › widgets › ListView
The ListView widget is used to display data from data provider. Each data model is rendered using the view specified.
For more details and usage information on ListView, see the guide article on data widgets.
Properties
Section titled “Properties”| Property | Type | Description | Defined by |
|---|---|---|---|
$afterItem | Closure| | An anonymous function that is called once AFTER rendering each data model. Default: null. Available since 2.0.11. | ListView |
$autoIdPrefix static | string | The prefix to the automatically generated widget IDs. Default: 'w'. | yii\ |
$beforeItem | Closure| | An anonymous function that is called once BEFORE rendering each data model. Default: null. Available since 2.0.11. | ListView |
$behaviors read-only | array<yii\<static>> | List of behaviors attached to this component. | yii\ |
$dataProvider | yii\ | The data provider for the view. Default: null. | BaseListView |
$emptyText | string| | The HTML content to be displayed when $dataProvider does not have any data. Default: null. | BaseListView |
$emptyTextOptions | array | The HTML attributes for the emptyText of the list view. Default: ['class' => 'empty']. | BaseListView |
$id | string | Id of the widget. | yii\ |
$itemOptions | array|Closure | The HTML attributes for the container of the rendering result of each data model. Default: []. | ListView |
$itemView | string| | The name of the view for rendering each data item, or a callback (e.g. an anonymous function) for rendering each data item. Default: null. | ListView |
$layout | string | The layout that determines how different sections of the list view should be organized. Default: "{summary}\. | BaseListView |
$options | array | The HTML attributes for the container tag of the list view. Default: ['class' => 'list-view']. | ListView |
$pager | array | The configuration for the pager widget. Default: []. | BaseListView |
$separator | string | The HTML code to be displayed between any two consecutive items. Default: "\. | ListView |
$showOnEmpty | bool | Whether to show an empty list view if $dataProvider returns no data. Default: false. | BaseListView |
$sorter | array | The configuration for the sorter widget. Default: []. | BaseListView |
$summary | string| | The HTML content to be displayed as the summary of the list view. Default: null. | BaseListView |
$summaryOptions | array | The HTML attributes for the summary of the list view. Default: ['class' => 'summary']. | BaseListView |
$view | yii\ | The view object that can be used to render views or view files. | yii\ |
$viewParams | array | Additional parameters to be passed to $itemView when it is being rendered. Default: []. | ListView |
$viewPath read-only | string | The directory containing the view files for this widget. | yii\ |
Methods
Section titled “Methods”| Method | Description | Defined by |
|---|---|---|
__construct() | Constructor. | yii\ |
__call() | Calls the named method which is not a class method. | yii\ |
__clone() | This method is called after the object is created by cloning an existing one. | yii\ |
__get() | Returns the value of a component property. | yii\ |
__isset() | Checks if a property is set, i.e. defined and not null. | yii\ |
__set() | Sets the value of a component property. | yii\ |
__unset() | Sets a component property to be null. | yii\ |
afterRun() | This method is invoked right after a widget is executed. | yii\ |
attachBehavior() | Attaches a behavior to this component. | yii\ |
attachBehaviors() | Attaches a list of behaviors to the component. | yii\ |
beforeRun() | This method is invoked right before the widget is executed. | yii\ |
begin() static | Begins a widget. | yii\ |
behaviors() | Returns a list of behaviors that this component should behave as. | yii\ |
canGetProperty() | Returns a value indicating whether a property can be read. | yii\ |
canSetProperty() | Returns a value indicating whether a property can be set. | yii\ |
className() static | Returns the fully qualified name of this class. | yii\ |
detachBehavior() | Detaches a behavior from the component. | yii\ |
detachBehaviors() | Detaches all behaviors from the component. | yii\ |
end() static | Ends a widget. | yii\ |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\ |
getBehavior() | Returns the named behavior object. | yii\ |
getBehaviors() | Returns all behaviors attached to this component. | yii\ |
getId() | Returns the ID of the widget. | yii\ |
getView() | Returns the view object that can be used to render views or view files. | yii\ |
getViewPath() | Returns the directory containing the view files for this widget. | yii\ |
hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\ |
hasMethod() | Returns a value indicating whether a method is defined. | yii\ |
hasProperty() | Returns a value indicating whether a property is defined for this component. | yii\ |
init() | Initializes the view. | BaseListView |
off() | Detaches an existing event handler from this component. | yii\ |
on() | Attaches an event handler to an event. | yii\ |
render() | Renders a view. | yii\ |
renderEmpty() | Renders the HTML content indicating that the list view has no data. | BaseListView |
renderFile() | Renders a view file. | yii\ |
renderItem() | Renders a single data model. | ListView |
renderItems() | Renders all data models. | ListView |
renderPager() | Renders the pager. | BaseListView |
renderSection() | Renders a section of the specified name. | BaseListView |
renderSorter() | Renders the sorter. | BaseListView |
renderSummary() | Renders the summary text. | BaseListView |
run() | Runs the widget. | BaseListView |
setId() | Sets the ID of the widget. | yii\ |
setView() | Sets the view object to be used by this widget. | yii\ |
trigger() | Triggers an event. | yii\ |
widget() static | Creates a widget instance and runs it. | yii\ |
renderAfterItem() protected | Calls $afterItem closure, returns execution result. | ListView |
renderBeforeItem() protected | Calls $beforeItem closure, returns execution result. | ListView |
Events
Section titled “Events”| Event | Type | Description | Defined by |
|---|---|---|---|
EVENT_INIT | yii\ | An event that is triggered when the widget is initialized via init(). Event name: 'init'. Available since 2.0.11. | yii\ |
EVENT_BEFORE_RUN | yii\ | An event raised right before executing a widget. Event name: 'beforeRun'. Available since 2.0.11. | yii\ |
EVENT_AFTER_RUN | yii\ | An event raised right after executing a widget. Event name: 'afterRun'. Available since 2.0.11. | yii\ |
Property details
Section titled “Property details”$afterItem
Section titled “$afterItem ”public Closure|null $afterItem = nullAn anonymous function that is called once AFTER rendering each data model.
It should have the same signature as $beforeItem.
The return result of the function will be rendered directly.
Note: If the function returns null, nothing will be rendered after the item.
Since
2.0.11
$beforeItem
Section titled “$beforeItem ”public Closure|null $beforeItem = nullAn anonymous function that is called once BEFORE rendering each data model.
It should have the following signature:
function ($model, $key, $index, $widget)$model: the current data model being rendered$key: the key value associated with the current data model$index: the zero-based index of the data model in the model array returned by$dataProvider$widget: the ListView object
The return result of the function will be rendered directly.
Note: If the function returns null, nothing will be rendered before the item.
Since
2.0.11
$itemOptions
Section titled “$itemOptions ”public array|Closure $itemOptions = []The HTML attributes for the container of the rendering result of each data model.
This can be either an array specifying the common HTML attributes for rendering each data item,
or an anonymous function that returns an array of the HTML attributes. The anonymous function will be
called once for every data model returned by $dataProvider.
The “tag” element specifies the tag name of the container element and defaults to “div”.
If “tag” is false, it means no container element will be rendered.
If this property is specified as an anonymous function, it should have the following signature:
function ($model, $key, $index, $widget)$itemView
Section titled “$itemView ”public string|callable $itemView = nullThe name of the view for rendering each data item, or a callback (e.g. an anonymous function) for rendering each data item.
If it specifies a view name, the following variables will be available in the view:
$model: mixed, the data model$key: mixed, the key value associated with the data item$index: integer, the zero-based index of the data item in the items array returned by$dataProvider.$widget: ListView, this widget instance
Note that the view name is resolved into the view file by the current context of the $view object.
If this property is specified as a callback, it should have the following signature:
function ($model, $key, $index, $widget)$options
Section titled “$options ”public array $options = ['class' => 'list-view']The HTML attributes for the container tag of the list view.
The “tag” element specifies the tag name of the container element and defaults to “div”.
$viewParams
Section titled “$viewParams ”public array $viewParams = []Additional parameters to be passed to $itemView when it is being rendered.
This property is used only when $itemView is a string representing a view name.
Method details
Section titled “Method details”renderItem()
Section titled “renderItem() ”public function renderItem(mixed $model, mixed $key, int $index): stringRenders a single data model.
Parameters
| Parameter | Type | Description |
|---|---|---|
$model | mixed | The data model to be rendered |
$key | mixed | The key value associated with the data model |
$index | int | The zero-based index of the data model in the model array returned by $dataProvider. |
Returns
string: The rendering result
renderItems()
Section titled “renderItems() ”public function renderItems(): stringRenders all data models.
Returns
string: The rendering result
renderAfterItem()
Section titled “renderAfterItem() ”protected function renderAfterItem(mixed $model, mixed $key, int $index): string|nullCalls $afterItem closure, returns execution result.
If $afterItem is not a closure, null will be returned.
Parameters
| Parameter | Type | Description |
|---|---|---|
$model | mixed | The data model to be rendered |
$key | mixed | The key value associated with the data model |
$index | int | The zero-based index of the data model in the model array returned by $dataProvider. |
Returns
string|null: $afterItem call result or null when $afterItem is not a closure
Since
2.0.11
See also
renderBeforeItem()
Section titled “renderBeforeItem() ”protected function renderBeforeItem(mixed $model, mixed $key, int $index): string|nullCalls $beforeItem closure, returns execution result.
If $beforeItem is not a closure, null will be returned.
Parameters
| Parameter | Type | Description |
|---|---|---|
$model | mixed | The data model to be rendered |
$key | mixed | The key value associated with the data model |
$index | int | The zero-based index of the data model in the model array returned by $dataProvider. |
Returns
string|null: $beforeItem call result or null when $beforeItem is not a closure
Since
2.0.11
See also