Estimados amigos de Yii, mi consulta es la siguiente:
Tengo un CGridView, donde quiero mostrar datos filtrados de forma que:
1.- me muestre solo los datos que a creado el usuario que esta logueado en ese momento, osea que el vea solo los datos que el a ingresado en las tablas.
2.- Mostrar los datos de en donde mis tablas de una tabla referenciada y de otra q no esta referenciada me explico
tengo 3 tablas ficha_visitas, usuario, reservas. Quiero mostrar en las reservas la el nombre de la ficha de visita y el usuario que la creo, pero reservas esta relacionada solo con ficha_visitas, y ficha_visitas relacionada con usuario y reservas. se entendio?
espero me ayuden creo q no es muy dificil. saludos y gracias.
Para q os filtre sólo los datos creados por el usuario logueado, tenéis que modificar la función que llamáis en el data provider del grid. Por ejemplo si fuese $nombreModelo->search(), pues en vuestro search pondríais algo como esto (supongo que las tablas tendrán un usuario_id, sino no sé como vais a saber de quién es cada dato… :
$criteria->compare('usuario_id', Yii::app()->user->ID); // ID o como sellame vuestra propiedad en CWebUser.
La segunda parte no la entendí pq sí tenéis todas las tablas relacionadas, entonces sólo tenéis q acceder a las relaciones y listo. Algo así como :