PHP 클래스 yii\data\SqlDataProvider

SqlDataProvider provides data in terms of arrays, each representing a row of query result. Like other data providers, SqlDataProvider also supports sorting and pagination. It does so by modifying the given [[sql]] statement with "ORDER BY" and "LIMIT" clauses. You may configure the [[sort]] and [[pagination]] properties to customize sorting and pagination behaviors. SqlDataProvider may be used in the following way: php $count = Yii::$app->db->createCommand(' SELECT COUNT(*) FROM user WHERE status=:status ', [':status' => 1])->queryScalar(); $dataProvider = new SqlDataProvider([ 'sql' => 'SELECT * FROM user WHERE status=:status', 'params' => [':status' => 1], 'totalCount' => $count, 'sort' => [ 'attributes' => [ 'age', 'name' => [ 'asc' => ['first_name' => SORT_ASC, 'last_name' => SORT_ASC], 'desc' => ['first_name' => SORT_DESC, 'last_name' => SORT_DESC], 'default' => SORT_DESC, 'label' => 'Name', ], ], ], 'pagination' => [ 'pageSize' => 20, ], ]); get the user records in the current page $models = $dataProvider->getModels(); Note: if you want to use the pagination feature, you must configure the [[totalCount]] property to be the total number of rows (without pagination). And if you want to use the sorting feature, you must configure the [[sort]] property so that the provider knows which columns can be sorted. For more details and usage information on SqlDataProvider, see the guide article on data providers.
부터: 2.0
저자: Qiang Xue ([email protected])
상속: extends BaseDataProvider
파일 보기 프로젝트 열기: yiisoft/yii2 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
$db the DB connection object or the application component ID of the DB connection. Starting from version 2.0.2, this can also be a configuration array for creating the object.
$key the column that is used as the key of the data models. This can be either a column name, or a callable that returns the key value of a given data model. If this is not set, the keys of the [[models]] array will be used.
$params parameters (name=>value) to be bound to the SQL statement.
$sql the SQL statement to be used for fetching data rows.

공개 메소드들

메소드 설명
init ( ) Initializes the DB connection component.

보호된 메소드들

메소드 설명
prepareKeys ( $models )
prepareModels ( )
prepareTotalCount ( )

메소드 상세

init() 공개 메소드

This method will initialize the [[db]] property to make sure it refers to a valid DB connection.
public init ( )

prepareKeys() 보호된 메소드

protected prepareKeys ( $models )

prepareModels() 보호된 메소드

protected prepareModels ( )

prepareTotalCount() 보호된 메소드

protected prepareTotalCount ( )

프로퍼티 상세

$db 공개적으로 프로퍼티

the DB connection object or the application component ID of the DB connection. Starting from version 2.0.2, this can also be a configuration array for creating the object.
public $db

$key 공개적으로 프로퍼티

the column that is used as the key of the data models. This can be either a column name, or a callable that returns the key value of a given data model. If this is not set, the keys of the [[models]] array will be used.
public $key

$params 공개적으로 프로퍼티

parameters (name=>value) to be bound to the SQL statement.
public $params

$sql 공개적으로 프로퍼티

the SQL statement to be used for fetching data rows.
public $sql