Download the PHP package websecret/laravel-search without Composer
On this page you can find all versions of the php package websecret/laravel-search. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download websecret/laravel-search
More information about websecret/laravel-search
Files in websecret/laravel-search
Package laravel-search
Short Description Laravel Eloquent models with Elasticsearch 2
License MIT
Homepage https://github.com/websecret/laravel-search
Informations about the package laravel-search
Laravel-Searchable
Laravel Eloquent models with Elasticsearch 2
Installation and Requirements
First, you'll need to require the package with Composer:
Aftwards, run composer update
from your command line.
Then, update config/app.php
by adding an entry for the service provider.
Finally, from the command line again, run php artisan vendor:publish --provider=Websecret\LaravelSearchable\SearchableServiceProvider
to publish
the default configuration file.
Updating your Eloquent Models
Your models should implement Searchable's interface and use it's trait. You should
also define a protected property $searchable
with any model-specific configurations
(see Configuration below for details):
Searching
Use search
scope to find models. Result collection will be sorted by score.
Indexing
Models auto indexing on updated
, created
and deleted
events.
You can use $article->searchIndex();
and $article->searchDelete();
to manually index or delete from index. Use Article::searchDeleteAll()
to clear all index by specified model.
Config
fuzziness
Fuzzy matching treats two words that are “fuzzily” similar as if they were the same word.
Of course, the impact that a single edit has on a string depends on the length of the string. Two edits to the word hat can produce mad, so allowing two edits on a string of length 3 is overkill. The fuzziness parameter can be set to AUTO, which results in the following maximum edit distances:
0
for strings of one or two characters1
for strings of three, four, or five characters2
for strings of more than five characters
Of course, you may find that an edit distance of 2 is still overkill, and returns results that don’t appear to be related. You may get better results, and better performance, with a maximum fuzziness of 1.
prefix_length
The number of initial characters which will not be “fuzzified”. This helps to reduce the number of terms which must be examined.
max_expansions
The maximum number of terms that the fuzzy query will expand to.
All versions of laravel-search with dependencies
illuminate/config Version ^5.0
illuminate/database Version ^5.0
illuminate/support Version ^5.0
elasticsearch/elasticsearch Version 2.*