hascrock
(Hasbelcaro)
August 8, 2011, 4:13pm
1
Hola comunidad Yii… necesito mostrar en un CGridview una consulta que hice utilizando el DAO de Yii, esto es lo que tengo en la vista hasta ahora pero no funciona
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'traitinerarios-grid',
'dataProvider' =>new CActiveDataProvider($model->Consultar()),
//'filter'=>$model,
'columns'=>array(
array(
'class'=>'CButtonColumn',
'template'=>'{view}',
),
array('name'=>'ID'),
array('name'=>'VE_PLACA'),
array('name'=>'NOMBRE'),
)));
?>
me resulta esto:
Fatal error: Call to a member function getDbCriteria() on a non-object in C:\EasyPHP-5.3.5.0\www\yii\framework\web\CActiveDataProvider.php on line 173
Gracias.
Hola!
¿Cuál sería la consulta que tenés en el modelo?
hascrock
(Hasbelcaro)
August 9, 2011, 12:39pm
3
esto es lo que tengo en mi modelo:
public function consultar()
{
$conexion = Yii::app()->db ;
$sql = "SELECT TRA_ITINERARIOS.ID, TRA_ITINERARIOS.VE_PLACA, GEN_MUNICIPIOS.NOMBRE
FROM TRA_ITINERARIOS, GEN_MUNICIPIOS
WHERE TRA_ITINERARIOS.MU_ORIGEN = GEN_MUNICIPIOS.CODIGO
AND VE_PLACA = 'XMA943'";
$dataReader = $conexion->createCommand($sql)->query();
return $dataReader;
}
y en el controlador:
public function actionIndex()
{
$model=new TRAITINERARIOS('consultar');
$model->unsetAttributes();
$this->render ('index', array('model'=>$model));
hascrock
(Hasbelcaro)
August 9, 2011, 1:01pm
4
aparte de lo de la vista… hay alguna forma de optimizar la consulta??