SPHINX
은 ID의 목록을 반환하므로 기준을 사용하여 최종 결과를 주문하는 방법을 알 수 없습니다.Yii Criteria를 사용할 때 SPHINX로부터받은 데이터를 주문하는 방법은 무엇입니까?
나는 아이디의 포함 된 배열을 가지고 :
아이디의이 배열이 결과로SPHINX
검색 엔진에 의해 주어졌다
$a = array(1,2,3,4,5);
.
내가이 배열을 사용하고 PK와 같은 ID로 필요한 데이터를 추출 할,하지만 난이이 같은 결과를 주문해야 : 사진 옆에 바로 사진과 함께 모든 사용자 전에 비디오와 사진
사용자를 사용자 목록에서 사진이있는 사용자는 가장 최근에 로그인 한 시간순으로 가장 최근 로그인을 목록 상단에 정렬해야합니다. 사진이있는 모든 사용자는 나머지 사용자가 있어야하며 가장 최근에 가장 먼저 로그인해야합니다.
코드를 작성하는 방법을 알지 못해서 순서 필드없이이 작업을 시도했습니다.
$criteria = new CDbCriteria();
$criteria->addInCondition('id', $a);
$criteria->order = "FIELD(id, " . join(',', $a) . ")";
$dataProvider = new CActiveDataProvider('user', array(
'criteria' => $criteria,
'pagination' => array(
'pageSize' => $this->pageSize,
),
));
누구나 다음과 같이 시도 했습니까? 또는 다른 제안?