Tip 1:
Tener un Controller sin tener un Model, pudiendo tener (Controller + Vista) sin modelo.
Tener un Controller sin tener un Model, pudiendo tener (Controller + Vista) sin modelo.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class PersonasController extends AppController { | |
var $name = 'Personas'; | |
var $uses = null; //<= Con esto no busca el modelo Persona | |
.... |
Tip 2:
Desde un Controller cargar otra vista y cambiar de Layout para que no busque el predeterminada por el controller.
Desde un Controller cargar otra vista y cambiar de Layout para que no busque el predeterminada por el controller.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class PersonasController extends AppController { | |
var $name = 'Personas'; | |
function index() { | |
$this->layout='layout4'; //views/layouts/layout4.ctp | |
$this->autoRender = false; //Desactivar para no generar error | |
$this->render('home'); //view/personas/home.ctp | |
} | |
.... |
Tip3:
Como entrar por una Action y entragar la salida de otro Action desde el controller. Es como un redirect pero internamente en el propio controller, lo bueno de esto es que no cambia la url. Ejemplo si http://dominio.com.ar/controller1/action1/99, va seguir siendo esa misma url para el navegador; pero internamente desde el controllador utilizamos la action2 y la vista action2.ctp
Como entrar por una Action y entragar la salida de otro Action desde el controller. Es como un redirect pero internamente en el propio controller, lo bueno de esto es que no cambia la url. Ejemplo si http://dominio.com.ar/controller1/action1/99, va seguir siendo esa misma url para el navegador; pero internamente desde el controllador utilizamos la action2 y la vista action2.ctp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# http://dominio.com.ar/mycontroller1/action1/99 | |
class Mycontroller1Controller extends AppController { | |
function action1($paran1 = NULL) { | |
if(is_numeric($paran1) && $paran1 >0){ | |
$this->setAction('action2', NULL, NULL, NULL, $paran1); | |
}else{ | |
$this->Session->setFlash(__('No existe', true)); | |
$this->redirect('/'); | |
} | |
} | |
function action2($paran1 = NULL, $paran2 = NULL, $paran3 = NULL, $paran4 = NULL) { | |
// .... | |
} | |
//... | |
} |
Tip4:
Hacer que CakePHP 1.3 quede configurado desde el app/config/boostrap.php para que no diferencia singural y plurar ya que las reglas para el español del plural y singular no están dentro de cake.
Nota: recomiando poner los nombres de las tablas en plurar eje: paises, provincias, fotos, etc.. y todo va ser siempre plural para los controller y los modelos.
Hacer que CakePHP 1.3 quede configurado desde el app/config/boostrap.php para que no diferencia singural y plurar ya que las reglas para el español del plural y singular no están dentro de cake.
Nota: recomiando poner los nombres de las tablas en plurar eje: paises, provincias, fotos, etc.. y todo va ser siempre plural para los controller y los modelos.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# CODE IN CakePHP 1.3.+ app/config/bootstrap.php | |
// Reglas para trabajar con CakePHP en español, esto matiene el genero de como esta en la base de datos para las vista y controller | |
Inflector::rules('singular', array('rules' => array('/^aros$/i' => 'aro', '/^acos$/i' => 'aco', '/^users$/i' => 'user', '/^groups$/i' => 'group', '/^(.*)$/i' => '\1',), 'irregular' => array(), 'uninflected' => array())); | |
Inflector::rules('plural', array('rules' => array('/^aro$/i' => 'aros', '/^aco$/i' => 'acos', '/^user$/i' => 'users','/^group$/i' => 'groups', '/^(.*)$/i' => '\1',), 'irregular' => array(), 'uninflected' => array())); | |
// NOTA se recomienda poner el nombre de las tablas en plurar eje: paises, provincias, fotos, etc.. |