Я использую библиотеку упругого поиска, предоставляемую cakephp, выполнил Нажмите здесь это руководство из CakePhp, но при попытке получить доступ к методу добавления UsersController я получаю "нет такого индекса [index: users] " эта ошибка.
Такое ощущение, что пользовательский индекс не является созданным CakePHP, как, например, когда я создал индекс вручную для другой модели Статьи, эта ошибка исчезла, но я получил другую ошибку "тип [[article]] отсутствует [ index: _all] "
В application.php
$this->addPlugin('Cake/ElasticSearch', ['bootstrap' => true]);
В app.php
'elastic' => [
'className' => 'Cake\ElasticSearch\Datasource\Connection',
'driver' => 'Cake\ElasticSearch\Datasource\Connection',
'host' => '127.0.0.1',
'port' => 9200,
]
Создан тип модели UsersType.php
namespace App\Model\Type;
use Cake\ElasticSearch\Type;
class UsersType extends Type{}
In UsersController.php
public function beforeFilter(Event $event){
parent::beforeFilter($event);
// Load the Type using the 'Elastic' provider.
$this->loadModel('Users', 'Elastic');
}
метод add () в UsersController.php
public function add()
{
$user = $this->Users->newEntity();
if ($this->request->is('post')) {
$user = $this->Users->patchEntity($user, $this->request->getData());
if ($this->Users->save($user)) {
$this->Flash->success(__('The user has been saved.'));
return $this->redirect(['action' => 'index']);
}
$this->Flash->error(__('The user could not be saved. Please, try again.'));
}
$this->set(compact('user'));
}