Duda Con Consulta A Bd Con Tablas Relacionadas

Muy buenos días a todos,

primero he de decir que soy nuevo en el foro y en el uso de Yii. Actualmente estoy comenzando un proyecto con este framework, así que decidí registrarme para tener mejor acceso a la ayuda que me puedan brindar.

Comienzo con esta gran duda que tengo…

Estoy utilizando el módulo yii-usr para el manejo de usuarios. Este en base de datos se implementa mediante una tabla ‘users’, que tiene entre otros campos uno denominado ‘superuser’ que se utiliza para decir si el usuario es o no es superusuario. Este campo me va a ser de utilidad, sin embargo, voy a necesitar un tipo de usuario adicional.

En mi aplicación tengo una tabla ‘house’ que representa una casa, y una tabla ‘house_admin’ que relaciona las tablas ‘house’ y ‘users’, de manera que un usuario es administrador de una casa si se encuentra en esa tabla ‘house_admin’.

Ahora bien, necesito implementar una función isHouseAdmin(), muy similar a ‘isAdmin()’ para saber si el usuario es administrador de una casa.

La consulta sería así:

Es muy sencilla, pero no tengo idea de como cómo podría implementar esto. He visto en el foro que hablan de "Criteria" entre otras cosas, pero sinceramente no logro comprenderlo del todo, la información (a mi juicio) no es precisa. Espero me puedan ayudar

PD:

Por supuesto ambos modelos están creados, incluyendo sus relaciones.

Asumiendo que esta función se agrega en el modelo "User"


public function isHouseAdmin($house_id){

    if(HouseAdmin::model()->findByAttributes(array('user_id'=>$this->id, 'house_id'=>$house_id))===null){

        return false;

    };

    return true;


}

Gracias! esto me ha funcionado