Php 如何重写CActiveDataProvider方法,在Yii中默认按降序显示CGridview
我的项目中有许多模型和网格视图,每个模型都有Php 如何重写CActiveDataProvider方法,在Yii中默认按降序显示CGridview,php,mysql,sorting,activerecord,yii,Php,Mysql,Sorting,Activerecord,Yii,我的项目中有许多模型和网格视图,每个模型都有create\u dttm字段 现在我想知道如何覆盖classcactivedaptaprovider,我将在其中添加DESC排序条件 i、 e 因此,它将适用于我的所有gridview,而不是在每个gridview中添加条件 例如: public function search() { $criteria = new CDbCriteria; $criteria->compare('id', $this->id);
create\u dttm
字段
现在我想知道如何覆盖classcactivedaptaprovider
,我将在其中添加DESC排序条件
i、 e
因此,它将适用于我的所有gridview,而不是在每个gridview中添加条件
例如:
public function search() {
$criteria = new CDbCriteria;
$criteria->compare('id', $this->id);
$criteria->compare('name', $this->name, true);
$criteria->compare('age', $this->age);
$criteria->compare('create_dttm', $this->create_dttm, true);
$criteria->compare('update_dttm', $this->update_dttm, true);
return new CActiveDataProvider($this, array(
'criteria' => $criteria,
'pagination' => array(
'pageSize' => 10,
),
'sort' => array(
'defaultOrder' => 'create_dttm DESC',
)
));
}
我该怎么处理
任何帮助都将不胜感激。我认为简单的方法是在每个模型上添加排序变量 或者您可以使用下面的链接中的方法,但如果您使用这种方法,您也需要更改名称
因此,我的建议是,在每个模型上添加排序。我认为简单的方法是在每个模型上添加排序变量 或者您可以使用下面的链接中的方法,但如果您使用这种方法,您也需要更改名称
因此,我的建议是,在每个模型上添加排序。我认为简单的方法是在每个模型上添加排序变量 或者您可以使用下面的链接中的方法,但如果您使用这种方法,您也需要更改名称
因此,我的建议是,在每个模型上添加排序。我认为简单的方法是在每个模型上添加排序变量 或者您可以使用下面的链接中的方法,但如果您使用这种方法,您也需要更改名称
因此,我的建议是,在每个模型上添加排序。让每个模型从BaseModel类继承,并覆盖默认的作用域方法:
<?php
class BaseModel extends CActiveRecord {
...
public function defaultScope() {
return array(
'order' => 'create_dttm DESC',
);
}
让每个模型从BaseModel类继承,并覆盖默认的作用域方法:
<?php
class BaseModel extends CActiveRecord {
...
public function defaultScope() {
return array(
'order' => 'create_dttm DESC',
);
}
让每个模型从BaseModel类继承,并覆盖默认的作用域方法:
<?php
class BaseModel extends CActiveRecord {
...
public function defaultScope() {
return array(
'order' => 'create_dttm DESC',
);
}
让每个模型从BaseModel类继承,并覆盖默认的作用域方法:
<?php
class BaseModel extends CActiveRecord {
...
public function defaultScope() {
return array(
'order' => 'create_dttm DESC',
);
}
我是否可以在CActiveRecord中添加defaultScope()方法,而不是在每个模型中重写basemodel类。更新CActiveRecord不是好的做法,因为它是框架的一部分。因此,Samuel用基本模型类继承所有模型类并添加defaultScope()方法(如上所述)的方法将是很好的方法。我是否可以在CActiveRecord中添加defaultScope()方法,而不是在每个模型中重写basemodel类。更新CActiveRecord不是很好的做法,因为它是框架的一部分。因此,Samuel用基本模型类继承所有模型类并添加defaultScope()方法(如上所述)的方法将是很好的方法。我是否可以在CActiveRecord中添加defaultScope()方法,而不是在每个模型中重写basemodel类。更新CActiveRecord不是很好的做法,因为它是框架的一部分。因此,Samuel用基本模型类继承所有模型类并添加defaultScope()方法(如上所述)的方法将是很好的方法。我是否可以在CActiveRecord中添加defaultScope()方法,而不是在每个模型中重写basemodel类。更新CActiveRecord不是很好的做法,因为它是框架的一部分。因此,Samuel用基本模型类继承所有模型类并添加defaultScope()方法的方法将是很好的方法。