blonder413
(Blonder413)
February 20, 2015, 4:33pm
1
hola, tengo una tabla "contrato" relacionada con la tabla "ep" y esta a su vez con "modalidad". Estoy mostrando los datos del contrato en un cgridview pero no puedo filtrar por la modalidad ya que no existe ese campo en la tabla contrato ¿qué puedo hacer?
Esta es la relación
contrato -> ep -> modalidad
Esto es lo que tengo
$criteria = new CDbCriteria;
$criteria->with = array(
'ep' => array(),
);
Intento hacer esto pero no sirve
$criteria->compare('ep.modalidad.id', $this->modalidad, false);
wally
(Fosales)
February 21, 2015, 2:10am
2
Hi,
You could try:
$criteria = new CDbCriteria;
$criteria->with = array(
'ep.modalidad',
);
$criteria->compare('modalidad.id', $this->modalidad, false);
I think this wiki could help you too.
blonder413
(Blonder413)
February 23, 2015, 2:23pm
3
don’t works. No errors but no filter
blonder413
(Blonder413)
February 23, 2015, 4:29pm
4
ya lo logré, incluí los siguiente:
if (isset($_GET['Contrato']['modalidad'])) {
$modalidad = Modalidadcontratacion::model()->findByPk($_GET['Contrato']['modalidad']);
$this->modalidad = $modalidad->id;
}
$criteria->compare('ep.modalidadcontratacion_id', $this->modalidad, false);