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 ( ) |