public function search($db = null, $options = [])
{
$result = $this->createCommand($db)->search($options);
// TODO implement with() for asArray
if (!empty($result['hits']['hits']) && !$this->asArray) {
$models = $this->createModels($result['hits']['hits']);
if (!empty($this->with)) {
$this->findWith($this->with, $models);
}
foreach ($models as $model) {
$model->afterFind();
}
$result['hits']['hits'] = $models;
}
return $result;
}