Elasticsearch Query and ActiveRecord for Yii 2
This extension provides the elasticsearch integration for the Yii framework 2.0.
It includes basic querying/search support and also implements the ActiveRecord
pattern that allows you to store active
records in elasticsearch.
For license information check the LICENSE-file.
Documentation is at docs/guide/README.md.
Requirements ¶
Dependent on the version of elasticsearch you are using you need a different version of this extension.
- Extension version 2.0.x works with elasticsearch version 1.0 to 4.x.
- Extension version 2.1.x requires at least elasticsearch version 5.0.
Installation ¶
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist yiisoft/yii2-elasticsearch:"~2.0.0"
or add
"yiisoft/yii2-elasticsearch": "~2.0.0"
to the require section of your composer.json.
Configuration ¶
To use this extension, you have to configure the Connection class in your application configuration:
return [
//....
'components' => [
'elasticsearch' => [
'class' => 'yii\elasticsearch\Connection',
'nodes' => [
['http_address' => '127.0.0.1:9200'],
// configure more hosts if you have a cluster
],
],
]
];
Class Reference
Class | Description |
---|---|
yii\elasticsearch\ActiveDataProvider | ActiveDataProvider is an enhanced version of yii\data\ActiveDataProvider specific to the ElasticSearch. |
yii\elasticsearch\ActiveFixture | ActiveFixture represents a fixture for testing backed up by an ActiveRecord class or an elastic search index. |
yii\elasticsearch\ActiveQuery | ActiveQuery represents a yii\elasticsearch\Query associated with an yii\elasticsearch\ActiveRecord class. |
yii\elasticsearch\ActiveRecord | ActiveRecord is the base class for classes representing relational data in terms of objects. |
yii\elasticsearch\BatchQueryResult | BatchQueryResult represents a batch query from which you can retrieve data in batches. |
yii\elasticsearch\BulkCommand | The yii\elasticsearch\BulkCommand class implements the API for accessing the elasticsearch bulk REST API. |
yii\elasticsearch\Command | The Command class implements the API for accessing the elasticsearch REST API. |
yii\elasticsearch\Connection | Elasticsearch Connection is used to connect to an elasticsearch cluster version 0.20 or higher |
yii\elasticsearch\DebugAction | Debug Action is used by yii\elasticsearch\DebugPanel to perform elasticsearch queries using ajax. |
yii\elasticsearch\DebugPanel | Debugger panel that collects and displays elasticsearch queries performed. |
yii\elasticsearch\ElasticsearchTarget | ElasticsearchTarget stores log messages in a elasticsearch index. |
yii\elasticsearch\Exception | Exception represents an exception that is caused by elasticsearch-related operations. |
yii\elasticsearch\Query | Query represents a query to the search API of elasticsearch. |
yii\elasticsearch\QueryBuilder | QueryBuilder builds an elasticsearch query based on the specification given as a yii\elasticsearch\Query object. |