[RESUELTO]:Problema con Criteria en relaciones de muchos a muchos

Hola, lo que sucede es que hice la relación de muchos a muchos entre un modelo ‘permiso’ y un modelo ‘usuario’ de la siguiente manera:




return array(

	'permisosUsuario'=>array(self::MANY_MANY, 'Permiso', 'usuario_has_permiso(usu_codigo, per_codigo)','condition'=>'permisosUsuario.per_codigo=1'),

);



La anterior relación lo que hace es que me muestra los usuarios que tienen el permiso con el código 1 (per_codigo=1) y los obtengo de la siguiente manera:


$models=Permiso::model()->with('usuarioPermisos')->findAll();

El problema es que necesito pasarle a la función findAll() el $criteria para que me permita paginar y ordenar pero cuando lo hago entonces ya no me tiene en cuenta la condición que coloqué en la función relations() del modelo, es decir, me muestra todos los usuarios y no solo los que tengan permiso con el código 1. Es como si colocando el critaria me anulara el condition que coloco al momento de hacer la relación de muchos a muchos.

Un saludo y de ante mano muchas gracias!

Si lo haces sin el width (osea lazy loading), funciona??

Cual es el SQL que te genera, podés verlo?

Sebas, mira que yo ayer cuando eso no me funcionó entonces hice el join y las condiciones todo por el Criteria y así pude seguir avanzando porque así si me funciona.

Pero entonces como tu me pedías que te pasar el sql, entonces decidí hacer otra prueba con un ejemplo similar al que me falló la primera vez y el problema es que esta vez no me falló, es decir, ahora si me permitió hacer un condition en la función relations() del modelo y otros condition en el criteria y el sql me muestra ambas condiciones… no sé entonces que pasó en el primer ejemplo que hice pero todo parece indicar que fue un error humano. ::)

Muchas gracias por tu interés en ayudarme a resolver este problema.