Обновляем и удаляем данные. Поменяем имя пользователю, добавим вид увлечения coffe и добавим автомобили, которые есть у этого пользователя.
Обновляем и удаляем данные
Команда:
POST /megacorp/employee/1/_update { "doc" : { "first_name" : [ "Bob" ], "interests": [ "sports", "music", "coffe" ], "cars": ["audi", "bmw"], "views": 0 } }
Получаем данные:
GET /megacorp/employee/1
Удаляем документ:
DELETE /megacorp/employee/1
CURL:
curl -XPOST 'localhost:9200/megacorp/employee/1/_update?pretty' -d ' { "doc": { "first_name": "Bob" , "interests": [ "sports", "music", "coffe" ], "cars": ["audi", "bmw"] } }'
Получаем данные:
$curl -XGET 'http://localhost:9200/megacorp/employee/1 '
Удаляем:
curl -XDELETE 'localhost:9200/megacorp/employee/1'
PHP:
Обновляем данные:
require 'vendor/autoload.php'; $client = Elasticsearch\ClientBuilder::create()->build(); $params = [ "id" => '1', "index" => "megacorp", "type" => "employee", "body" => [ "doc" => [ "first_name" => "Bob", "last_name" => "Smith", "age" => "25", "about" => 'I love to go rock climbing', "interests" => [ "sports", "music", "coffe"], "cars" => ["audi", "bmw"] ] ] ]; try { $response = $client->update($params); } catch (Exception $e) { var_dump($e->getMessage()); }
Удаляем данные:
require 'vendor/autoload.php'; $client = Elasticsearch\ClientBuilder::create()->build(); $params = [ "id" => '1', "index" => "megacorp", "type" => "employee", ]; try { $response = $client->delete($params); } catch (Exception $e) { var_dump($e->getMessage()); }
Yii2:
Добавляем запись cars в массив атрибутов и правил.
public function attributes() { return [ "first_name", "last_name", "age" , "about" , "interests" , "cars" , ]; }
Получаем нашего сотрудника:
$model = Megacorp::get(1);
Обновляем данные:
$model->attributes = [ "first_name" => "Bob", "interests" => [ "sports", "music", "coffe"], "cars" => ["audi", "bmw"] ]; $model->save();
Смотрим результат:
$model = Megacorp::get(1); var_dump($model);
Удаляем данные:
$model = Megacorp::get(10); $model->delete();
Дополнительно
- Elasticsearch. Что такое Elasticsearch и как его установить
- Elasticsearch. Добавление данных (индексация)
- Elasticsearch. Извлечение данных
- Elasticsearch. Поиск, фильтры - Query DSL
- Elasticsearch. Полнотекстовый поиск
- Elasticsearch. Выделение результата поиска
- Elasticsearch. Обновление, удаление документа
Комментарии
Хороший цикл статей. Будет ли развитие темы? Что-то более подробное, с реальным примером и углублением + различные нюансы? Зарание спасибо, автор красавчик
Ответить