如何使用带顺序的特定列进行findAll?
代码bellow工作并从开发人员id中找到所有
$id = Yii::app()->user->getState('id');
$models = Games::model()->findAll('developer_id='.$id);
码波纹管工作并订购
$models = Games::model()->findAll(array('order'=>'status'));
当我混合在一起时,只为findAll developer_id=‘工作。$id不是由订购的
$id = Yii::app()->user->getState('id');
$models = Games::model()->findAll('developer_id='.$id,array('order'=>'status'));
有什么建议吗?谢谢
发布于 2014-11-17 02:39:30
在您的模型中,添加以下函数:
public function scopes() {
return array(
'bystatus' => array('order' => 'status DESC'),
);
}
现在,您可以这样执行查询:
$models = Games::model()->bystatus()->findAll('developer_id='.$id);
=====
奖励:您还可以在模型中添加此函数:
public function bydeveloper($devId) {
$this->getDbCriteria()->mergeWith(array(
'condition' => 'developer_id = '.$devId,
));
return $this;
}
现在,您可以这样执行查询:
$models = Games::model()->bystatus()->bydeveloper($id)->findAll();
发布于 2015-05-20 10:40:22
你可以试试这个-
$id = Yii::app()->user->getState('id');
$model = Games::model()->findAll(array("condition" => "developer_id = '".$id."'","order" => "status"));
它应该是工作
发布于 2016-03-23 10:34:37
您可以尝试使用标准:
$id = Yii::app()->user->getState('id');
$criteria=new CDbCriteria;
$criteria->compare('developer_id',$id);
$criteria->order='status DESC';
$models = Games::model()->findAll($criteria);
https://stackoverflow.com/questions/26964641
复制相似问题