IndexAction
API reference › yii › rest › IndexAction
IndexAction implements the API endpoint for listing multiple models.
For more details and usage information on IndexAction, see the guide article on rest controllers.
Properties
Section titled “Properties”| Property | Type | Description | Defined by |
|---|---|---|---|
$behaviors read-only | array<yii\<static>> | List of behaviors attached to this component. | yii\ |
$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. Default: null. | Action |
$controller | yii\ | The controller that owns this action, or null when the action runs standalone. via Module::$actionMap Default: null. | yii\ |
$dataFilter | yii\| | Data filter to be used for the search filter composition. Default: null. Available since 2.0.13. | IndexAction |
$findModel | callable| | A PHP callable that will be called to return the model corresponding to the specified primary key value. Default: null. | Action |
$id | string| | ID of the action; null between construction and dispatcher post-assignment for standalone actions resolved through Module::$actionMap or Module::$actionNamespace. Default: null. | yii\ |
$modelClass | string | Class name of the model which will be handled by this action. Default: null. | Action |
$module | yii\| | The owning module, or null if neither a module nor a controller is attached. Available since 22.0. | yii\ |
$pagination | array|yii\| | The pagination to be used by prepareDataProvider(). Default: []. Available since 2.0.45. | IndexAction |
$prepareDataProvider | callable| | A PHP callable that will be called to prepare a data provider that should return a collection of the models. Default: null. | IndexAction |
$prepareSearchQuery | callable | A PHP callable that will be called to prepare query in prepareDataProvider. Default: null. Available since 2.0.42. | IndexAction |
$sort | array|yii\| | The sorting to be used by prepareDataProvider(). Default: []. Available since 2.0.45. | IndexAction |
$uniqueId read-only | string | The unique ID of this action among the whole application. | 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\ |
attachBehavior() | Attaches a behavior to this component. | yii\ |
attachBehaviors() | Attaches a list of behaviors to the component. | 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\ |
ensureBehaviors() | Makes sure that the behaviors declared in behaviors() are attached to this component. | yii\ |
findModel() | Returns the data model based on the primary key given. | Action |
getBehavior() | Returns the named behavior object. | yii\ |
getBehaviors() | Returns all behaviors attached to this component. | yii\ |
getModule() | Returns the module that owns this action when invoked standalone. | yii\ |
getUniqueId() | Returns the unique ID of this action among the whole application. | 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 object. | Action |
off() | Detaches an existing event handler from this component. | yii\ |
on() | Attaches an event handler to an event. | yii\ |
run() | IndexAction | |
runWithParams() | Runs this action with the specified parameters. | yii\ |
setModule() | Sets the module that owns this action when invoked standalone. | yii\ |
trigger() | Triggers an event. | yii\ |
afterRun() protected | This method is called right after run() is executed. | yii\ |
beforeRun() protected | This method is called right before run() is executed. | yii\ |
prepareDataProvider() protected | Prepares the data provider that should return the requested collection of the models. | IndexAction |
resolveStandaloneParams() protected | Resolves typed parameters of run() when the action is invoked without a hosting controller. | yii\ |
Property details
Section titled “Property details”$dataFilter
Section titled “$dataFilter ”public yii\data\DataFilter|null $dataFilter = nullData filter to be used for the search filter composition.
You must set up 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'); },]Since
2.0.13
$pagination
Section titled “$pagination ”public array|yii\data\Pagination|false $pagination = []The pagination to be used by prepareDataProvider().
If this is false, it means pagination is disabled.
Note: if a Pagination object is passed, it’s params will be set to the request parameters.
Since
2.0.45
$prepareDataProvider
Section titled “$prepareDataProvider ”public callable|null $prepareDataProvider = nullA 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 ActiveDataProvider.
If $dataFilter is set the result of 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}$prepareSearchQuery
Section titled “$prepareSearchQuery ”public callable $prepareSearchQuery = nullA 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;}Since
2.0.42
$sort
Section titled “$sort ”public array|yii\data\Sort|false $sort = []The sorting to be used by prepareDataProvider().
If this is false, it means sorting is disabled.
Note: if a Sort object is passed, it’s params will be set to the request parameters.
Since
2.0.45
Method details
Section titled “Method details”prepareDataProvider()
Section titled “prepareDataProvider() ”protected function prepareDataProvider(): yii\data\ActiveDataProviderPrepares the data provider that should return the requested collection of the models.
Returns