Я следую этому руководству, чтобы настроить аутентификацию https://book.cakephp.org/authentication/2/en/index.html с CakePHP4.
Таблица, в которой хранятся мои пользователи, не называется «пользователи», поэтому, когда я пытаюсь войти, она выдает мне эту ошибку:
Base table or view not found: 1146 Table 'databasename.users'
Где я могу указать модель пользователя? В каком файле его настроить? Как?
Вы должны соответствующим образом настроить соответствующий преобразователь, в данном случае преобразователь ORM.
Резолверы используются идентификаторами, которые принимают конфигурацию резолвера с помощью опции resolver
. Так, например, для идентификатора пароля вы можете сделать это так:
$service->loadIdentifier('Authentication.Password', [
'resolver' => [
'className' => 'Authentication.Orm',
'userModel' => 'YourCustomModelName',
],
// ....
]);
Обратите внимание, что при передаче массива конфигурации распознавателя также необходимо передать имя класса, поскольку конфигурация по умолчанию — это просто строка (имя класса распознавателя), поэтому она не сольется со значениями по умолчанию, а перезапишет их!
Смотрите также