J'utilise le composant Auth de CakePHP et il est dans mon app_controller.php
.Comment supprimer auth du contrôleur de pages dans CakePHP?
Maintenant je veux autoriser des vues spécifiques du contrôleur de pages. Comment je fais ça?
J'utilise le composant Auth de CakePHP et il est dans mon app_controller.php
.Comment supprimer auth du contrôleur de pages dans CakePHP?
Maintenant je veux autoriser des vues spécifiques du contrôleur de pages. Comment je fais ça?
Copiez le fichier pages_controller.php dans cake/libs/controllers vers votre app/controllers/dir. Ensuite, vous pouvez le modifier pour faire ce que vous voulez. Avec le composant Auth, la manière typique pour permettre un accès spécifique est comme ceci:
class PagesController extends AppController {
...
function beforeFilter() {
$this->Auth->allow('action1', 'allowedAction2');
}
...
Je recommande la copie très le fichier sur votre contrôleurs dir, plutôt que de modifier en place, car il fera gâteau la mise à niveau beaucoup plus facile, et moins probable que vous écrasiez accidentellement certaines choses.
Vous pouvez ajouter ce qui suit à votre app_controller.
function beforeFilter() {
if ($this->params['controller'] == 'pages') {
$this->Auth->allow('*'); // or ('page1', 'page2', ..., 'pageN')
}
}
Ensuite, vous n'avez pas besoin de copier le contrôleur de pages.
Je n'ai pas essayé les autres moyens mais c'est aussi la bonne façon de permettre l'accès à toutes ces pages statiques car l'affichage est une action courante. Dans l'application_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 ('*'); fonctionnera bien aussi. – Wayne
Vrai, bien que cela permettra toutes les actions dans le contrôleur de pages. Je pense que le PO a dit qu'il voulait permettre l'accès à tout le monde, mais seulement sur des points de vue spécifiques dans le PC. –
@Wayne Vraiment? C'est comme voler dans un avion sans couverture. –