Estoy usando el componente de autenticación de CakePHP y está en mi app_controller.php
.¿Cómo eliminar auth del controlador de páginas en CakePHP?
Ahora quiero para permitir vistas específicas del controlador de páginas. ¿Cómo puedo hacer eso?
Estoy usando el componente de autenticación de CakePHP y está en mi app_controller.php
.¿Cómo eliminar auth del controlador de páginas en CakePHP?
Ahora quiero para permitir vistas específicas del controlador de páginas. ¿Cómo puedo hacer eso?
Copia el archivo pages_controller.php en la torta/libs/controladores a su app/controllers/dir. Luego puedes modificarlo para hacer lo que quieras. Con el componente de autenticación, la manera típica para permitir el acceso específica es la siguiente:
class PagesController extends AppController {
...
function beforeFilter() {
$this->Auth->allow('action1', 'allowedAction2');
}
...
Recomiendo altamente copiar el archivo a su controladores dir, en lugar de editar en su lugar, ya que hará que la actualización de la torta mucho más fácil, y es menos probable que accidentalmente sobrescriba algunas cosas.
Puede agregar lo siguiente a su app_controller.
function beforeFilter() {
if ($this->params['controller'] == 'pages') {
$this->Auth->allow('*'); // or ('page1', 'page2', ..., 'pageN')
}
}
Entonces no tiene que hacer una copia del controlador de páginas.
No he probado los otros modos, pero esta es también la manera correcta para permitir el acceso a todas esas páginas estáticas como pantalla es que la acción común. En app_controller:
//for all actions
$this->Auth->allow(array('controller' => 'pages', 'action' => 'display'));
//for particular actions
$this->Auth->allow(array('controller' => 'pages', 'action' => 'display', 'home'));
$this->Auth->allow(array('controller' => 'pages', 'action' => 'display', 'aboutus'));
$ this-> Auth-> allow ('*'); funcionará bien también – Wayne
Es cierto, aunque eso permitirá todas las acciones en el controlador de páginas. Creo que el OP dijo que quería permitir el acceso a todos, pero solo a vistas específicas en la PC. –
@Wayne ¿De verdad? Es como volar en avión sin cobertura. –