This is component for searching in the Active Record models for Yii2 Framework.
Documentation is at docs/guide/README.md.
The preferred way to install this extension is through composer.
Either run
$ composer require vintage/yii2-search or add
"vintage/yii2-search": "~2.0" to the require section of your composer.json.
Implement \vintage\search\interfaces\SearchInterface interface in Active Record models
/** * Article search model. * * @property integer $id * @property string $title * @property string $short_description * @property string $content */ class ArticleSearch extends ActiveRecord implements \vintage\search\interfaces\SearchInterface { /** * @inheritdoc */ public function getSearchTitle() { return $this->title; } /** * @inheritdoc */ public function getSearchDescription() { return $this->short_description; } /** * @inheritdoc */ public function getSearchUrl() { return Url::toRoute(['/news/default/index', 'id' => $this->id]); } /** * @inheritdoc */ public function getSearchFields() { return [ 'title', 'short_description', 'content', ]; } }Call method of search component with a query
/* @var \vintage\search\models\SearchResult[] $result */ $result = Yii::$app->get('searcher')->search('some query here');this method returns array of \vintage\search\models\SearchResult objects.
You can run tests with composer command
$ composer test or using following command
$ codecept build && codecept run For information about contributing please read CONTRIBUTING.md.
This project is released under the terms of the BSD-3-Clause license.
