### 使用ElasticSearch
<br>
控制器内置了 ``ElasticSearch`` 可以通过如下例子来调用
```
// EDb通过传入一个名称来切换数据源,默认不传是db
// search有两个参数,第一是索引名称,第二个是查询语句
this.EDb().search('shop',{
"query": {
"match": {
"name": "李四"
}
}
})
```
返回
```
{
"took" : 559,
"timed_out" : false,
"_shards" : {
"total" : 1,
"successful" : 1,
"skipped" : 0,
"failed" : 0
},
"hits" : {
"total" : {
"value" : 2,
"relation" : "eq"
},
"max_score" : 1.89712,
"hits" : [
{
"_index" : "user",
"_type" : "docs",
"_id" : "2",
"_score" : 1.89712,
"_source" : {
"name" : "李四",
"sex" : 1,
"age" : 25,
"address" : "河北省"
}
},
{
"_index" : "user",
"_type" : "docs",
"_id" : "4",
"_score" : 0.6931471,
"_source" : {
"name" : "李华",
"sex" : 1,
"age" : 26,
"address" : "河北省"
}
}
]
}
}
```
关于ElasticSearch的语法总结,可以查看我下面这个手册
> [ElasticSearch开发手册](http://es.zhangyubk.com/2423818)
Elasticsearch Node.js文档
> https://www.npmjs.com/package/@elastic/elasticsearch
<br>
- 序言
- 新手指南
- 安装
- 开发规范
- 目录结构
- 配置
- 路由
- 路由定义
- 路由中间件
- 控制器
- 控制器定义
- 内置showSuccess方法
- 内置ApiException方法
- 参数获取器getParams
- 网络请求器Fetch
- 内置工具函数
- JWT的使用
- 验证
- 验证器
- 验证规则
- 自定义验证规则
- 混合验证规则
- 分场景验证
- 数据库
- 连接数据库
- 查询数据
- 链式操作
- where
- whereOr
- whereBetweenTime
- limit
- page
- count
- order
- field
- alias
- group
- distinct
- 添加数据
- 更新数据
- 删除数据
- 联表查询
- SQL调试
- 模型
- 视图
- 模板渲染(废弃)
- 模板变量(废弃)
- 错误和日志
- 异常处理
- 日志处理
- 命令行
- 扩展库
- 使用Redis
- get
- set
- del
- hget
- hset
- hdel
- decrby
- incrby
- rpush
- rpop
- 使用MongoDB
- 模型
- 新增
- 删除
- 修改
- 查询
- 使用ElasticSearch
- 使用阿里云OSS
- 阿里短信服务
- 微信支付
- 支付宝支付
- 部署
- 更新日志