Class yii\rest\IndexAction
| Inheritance | yii\rest\IndexAction » yii\rest\Action » yii\base\Action » yii\base\Component » yii\base\BaseObject | 
|---|---|
| Implements | yii\base\Configurable | 
| Available since version | 2.0 | 
| Source Code | https://github.com/yiisoft/yii2/blob/master/framework/rest/IndexAction.php | 
IndexAction implements the API endpoint for listing multiple models.
For more details and usage information on IndexAction, see the guide article on rest controllers.
Public Properties
| Property | Type | Description | Defined By | 
|---|---|---|---|
| $behaviors | yii\base\Behavior[] | List of behaviors attached to this component. This property is read-only. | yii\base\Component | 
| $checkAccess | callable | A PHP callable that will be called when running an action to determine if the current user has the permission to execute the action. | yii\rest\Action | 
| $controller | yii\base\Controller|yii\web\Controller|yii\console\Controller | The controller that owns this action | yii\base\Action | 
| $dataFilter | yii\data\DataFilter|null | Data filter to be used for the search filter composition. | yii\rest\IndexAction | 
| $findModel | callable | A PHP callable that will be called to return the model corresponding to the specified primary key value. | yii\rest\Action | 
| $id | string | ID of the action | yii\base\Action | 
| $modelClass | string | Class name of the model which will be handled by this action. | yii\rest\Action | 
| $prepareDataProvider | callable | A PHP callable that will be called to prepare a data provider that should return a collection of the models. | yii\rest\IndexAction | 
| $prepareSearchQuery | callable | A PHP callable that will be called to prepare query in prepareDataProvider
Should return $query
For example: `php
function ($query, $requestParams) {
    $query->andFilterWhere(['id' => 1]);
    . | yii\rest\IndexAction | 
| $uniqueId | string | The unique ID of this action among the whole application. This property is read-only. | yii\base\Action | 
Public Methods
| Method | Description | Defined By | 
|---|---|---|
| __call() | Calls the named method which is not a class method. | yii\base\BaseObject | 
| __clone() | This method is called after the object is created by cloning an existing one. | yii\base\Component | 
| __construct() | Constructor. | yii\base\BaseObject | 
| __get() | Returns the value of an object property. | yii\base\BaseObject | 
| __isset() | Checks if a property is set, i.e. defined and not null. | yii\base\BaseObject | 
| __set() | Sets value of an object property. | yii\base\BaseObject | 
| __unset() | Sets an object property to null. | yii\base\BaseObject | 
| attachBehavior() | Attaches a behavior to this component. | yii\base\Component | 
| attachBehaviors() | Attaches a list of behaviors to the component. | yii\base\Component | 
| behaviors() | Returns a list of behaviors that this component should behave as. | yii\base\Component | 
| canGetProperty() | Returns a value indicating whether a property can be read. | yii\base\BaseObject | 
| canSetProperty() | Returns a value indicating whether a property can be set. | yii\base\BaseObject | 
| className() | Returns the fully qualified name of this class. | yii\base\BaseObject | 
| detachBehavior() | Detaches a behavior from the component. | yii\base\Component | 
| detachBehaviors() | Detaches all behaviors from the component. | yii\base\Component | 
| ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\base\Component | 
| findModel() | Returns the data model based on the primary key given. | yii\rest\Action | 
| getBehavior() | Returns the named behavior object. | yii\base\Component | 
| getBehaviors() | Returns all behaviors attached to this component. | yii\base\Component | 
| getUniqueId() | Returns the unique ID of this action among the whole application. | yii\base\Action | 
| hasEventHandlers() | Returns a value indicating whether there is any handler attached to the named event. | yii\base\Component | 
| hasMethod() | Returns a value indicating whether a method is defined. | yii\base\BaseObject | 
| hasProperty() | Returns a value indicating whether a property is defined. | yii\base\BaseObject | 
| init() | Initializes the object. | yii\rest\Action | 
| off() | Detaches an existing event handler from this component. | yii\base\Component | 
| on() | Attaches an event handler to an event. | yii\base\Component | 
| run() | yii\rest\IndexAction | |
| runWithParams() | Runs this action with the specified parameters. | yii\base\Action | 
| trigger() | Triggers an event. | yii\base\Component | 
Protected Methods
| Method | Description | Defined By | 
|---|---|---|
| afterRun() | This method is called right after run()is executed. | yii\base\Action | 
| beforeRun() | This method is called right before run()is executed. | yii\base\Action | 
| prepareDataProvider() | Prepares the data provider that should return the requested collection of the models. | yii\rest\IndexAction | 
Property Details
Data filter to be used for the search filter composition. You must setup this field explicitly in order to enable filter processing. For example:
[
    'class' => 'yii\data\ActiveDataFilter',
    'searchModel' => function () {
        return (new \yii\base\DynamicModel(['id' => null, 'name' => null, 'price' => null]))
            ->addRule('id', 'integer')
            ->addRule('name', 'trim')
            ->addRule('name', 'string')
            ->addRule('price', 'number');
    },
]
See also yii\data\DataFilter.
A PHP callable that will be called to prepare a data provider that should return a collection of the models. If not set, prepareDataProvider() will be used instead. The signature of the callable should be:
function (IndexAction $action) {
    // $action is the action object currently running
}
The callable should return an instance of yii\data\ActiveDataProvider.
If $dataFilter is set the result of yii\data\DataFilter::build() will be passed to the callable as a second parameter. In this case the signature of the callable should be the following:
function (IndexAction $action, mixed $filter) {
    // $action is the action object currently running
    // $filter the built filter condition
}
A PHP callable that will be called to prepare query in prepareDataProvider Should return $query For example:
function ($query, $requestParams) {
    $query->andFilterWhere(['id' => 1]);
    ...
    return $query;
}
Method Details
Prepares the data provider that should return the requested collection of the models.
| protected yii\data\ActiveDataProvider prepareDataProvider ( ) | 
| public yii\data\ActiveDataProvider run ( ) |