Bonjour,
je crée le compte administrateur , j'ai créee le controller userAdmin et le model users admin table et les templates usersAdmin/add.ctp et login.ctp et index.ctp et cela me donne l erreur :
Error: Call to a member function newEntity() on a non-object
j ai besoin de votre aide
l erreur est associée à la premiere ligne de la fonction add( )
ça veut dire cette ligne : $user = $this->Users->newEntity();
public function add()
{
$user = $this->Users->newEntity();
if ($this->request->is('post')) {
$user = $this->Users->patchEntity($user, $this->request->data);
if ($this->Users->save($user)) {
$this->Flash->success(("L'utilisateur a été sauvegardé."));
return $this->redirect(['action' => 'index']);
}
$this->Flash->error(
("Impossible d'ajouter l'utilisateur."));
}
$this->set('user', $user);
}

1 réponse


Pour ma part j'ai jamais eut ce type de problèmes sous cake check tout ca et dit moi
Controller:

/**
 * File: src/Controller/Admin/UsersController.php
 */
namespace App\Controller\Admin;
use App\Controller\Admin\AppController;
class UsersController extends AppController {
    ...
    public function add() {
        $user = $this->Users->newEntity();
        ...
    }
    ...
 }

Router

...
Router::prefix('admin', function ($routes) {
    $routes->connect('/', ['controller' => 'Pages', 'action' => 'home']);// spécifique à ma config
    $routes->fallbacks('InflectedRoute');
});
...

Et hop tout devrait aller je classe les controllers préfixé dans un dossier portant le nom du préfixe et en théorie mon adresse www.monsite.com/admin/users/add tombe sur la bonne méthode