Condicional Y Orden En Find

hola, necesito pasar un condicional a un método find y ordenarlo descendentemente por el id, pero no me sale ni con find ni con findAll, ¿alguna idea?


$pagos = Pagoparcialvariable::model()->find("formapagocontrato_id = $pagoforma->id", array('order' => 'id desc'));

Parece que no se puede, al final lo solucioné usando criteria:


$criteria = new CDbCriteria;

$criteria->select = array('numeropago');

$criteria->condition = "formapagocontrato_id IN ($pagoforma->id)";

$criteria->order = 'id desc';

$pagos = Pagoparcialvariable::model()->find($criteria);

Find solo devuelve un model, FindAll devuelve un array de models, asi que en Find no tiene mucho caso ordenar(solo que quieras obtener la fila cuya columna x sea el mayor o el menor).

Ahora para ordenar es asi.


$pagos = Pagoparcialvariable::model()->findAll(array('condition'=>"formapagocontrato_id = $pagoforma->id",'order' => 'id desc'));