输出网格具有以下表格的列序列 - > B,C,D,E,A(与数据库中的表格相同)。但我需要这一系列的列 - > A,B,C,D,E。我知道如何使用sql查询执行此操作。但是我必须在Yii框架中这样做(我对Yii框架很新)。
这是MyClass的代码,它扩展了CActiveRecords
class Myclass extends CActiveRecord
{
public function tableName()
{
return 'dbName.dbTableName';
}
public function rules()
{
//Some rules
}
public function relations()
{
//Some modified relations
}
public function attributeLabels()
{
return array(
'a' => 'A',
'b' => 'B',
'c' => 'C',
'd' => 'D',
'e' => 'E',
);
}
public function search()
{
$criteria=new CDbCriteria;
$criteria->compare('a',$this->A);
$criteria->compare('b',$this->B);
$criteria->compare('c',$this->C,true);
$criteria->compare('d',$this->D,true);
$criteria->compare('e',$this->E,true);
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
));
}
public function getDbConnection()
{
return Yii::app()->db1;
}
public static function model($className=__CLASS__)
{
return parent::model($className);
}
}
1)Yii Framework中是否有任何内置函数可以根据我的需要重新排列列的序列。
2)我应该在这里或其他地方重新安排列序列。我的意思是这是重新安排列序列的正确类。
3)任何人都可以向我推荐一些优秀的Yii框架教程(视频教程,如果可能的话)。
非常感谢您的帮助
答案 0 :(得分:2)
是。加上这个:
$ criteria-> select =' a,b,c,d,e' //所需序列中的列
如果您在使用search()
方法时总是想要此序列,那么这是正确的位置。
抱歉,在这里真的无法帮到你。学习阅读Yii Framework文档,您几乎可以找到所需的一切。