Releases: pionl/laravel-lelastico
Releases · pionl/laravel-lelastico
0.1.4
⛑ Fix updating index settings (lock index, change settings, open index). For updating only mappings use --skip-settings-update
option in elastic:indices
command.
🏋️♂️ Add ability to convert request value to any type you want in RequestFilter
by extending convertValue
function.
protected function convertValue($value)
{
if (null === $value) {
return 0;
}
return intval($value);
}
⛑ Minor fixes
0.1.3
0.1.2
🎆 Add ability to create a request filter with query builder filter in single line
Easier creating of reusable filters
class NameFilter extends RequestFilter
{
public function __construct(Request $request)
{
parent::__construct($request, 'name', NameQuery::class);
}
}
Add non-reusable filters
$this->addFilter(new RequestQueryFilter(
$request,
'gender',
fn($value) => [Filter::term()->setField('gender')->setValue($value)])
)->addFilter(new RequestQueryFilter(
$request,
'country_code',
TermFilter::class
))->addFilter(new RequestQueryFilter(
$request,
'c',
[MatchFilter::class, 'city']
))
Add non-reusable from array map*
$this->addQueryFilters([
'gender' => TermFilter::class,
'city' => MatchFilter::class,
'country_code' => TermFilter::class,
'citizen_of' => TermFilter::class,
'phone' => MatchFilter::class,
]);
🎆 Add queries that will be added as must
instead of filter
(to support scoring)
By setting $scoring in your query
class NameQuery extends AbstractQuery
{
public $scoring = true;
...
While creating GivenFilters
or GivenOrQueries
new GivenFilters([Filter::term()], true)
new GivenOrQueries([Filter::term()], true)
While adding query filters as array map
$this->addQueryFilters([
'gender' => TermFilter::class,
'city' => MatchFilter::class,
], true);