Pareces nuevo por aquí. Si quieres participar, ¡pulsa uno de estos botones!
/** * Formatea la salida de una consulta a un objeto JSON válido * para trabajar con Extjs * * @param array $rows * @return json */ public function toExtjs($rows) { $modelName = array(); $ret = array(); foreach($rows as $row) { $fields = $this->fields; foreach($fields as $field) { if(isset($row->$field)) $ret[$field] = $row->$field; } array_push($modelName, $ret); } $return = array(); $return["count"] = count($rows); $name = $this->source; $return[$name] = $modelName; header("Content-Type: text/plain"); return json_encode($return); }
$this->set_response('json');ya debería bastar.
Comentarios
Quizas no le vez utilidad porque el framework de js que usas realiza todo el proceso de construir la vista mediante javascript, pero es la forma correcta manejarlo como lo haces es MVC...
Si le veo la utilidad, sobretodo si la salida va a ser html, pero cuando no es el caso (y cada vez será menos gracias al uso intensivo del ajax) se hace pesado tener un montón de directorios con archivos en los que no hay casi código.
De todas formas, si delego la vista en un framework javascript no estoy saltándome ningún principio del MVC.
Puedes trabajar el ajax como quieras pero tu js debe estar en algun view, porque hasta donde se la unica forma que puedes interactuar js es por medio de un view...
En la version 1.0 puedes anular las vistas si quieres mostrar nada
Gracias por el enlace.