basharbkaya / laravel-search
A Laravel package for adding search functionality to models.
dev-master
2023-10-21 09:08 UTC
Requires
- php: ^8.0
- illuminate/database: *
- illuminate/support: *
This package is auto-updated.
Last update: 2024-09-21 11:11:36 UTC
README
A laravel package to search via your models .
installation :
composer require basharbkaya/laravel-search
Usage :
in model
- use
Searchable
trait in your model - Define
$searchable
property in your model to select which columns to search in
Example :
use BasharBkaya\LaravelSearch\Searchable;
class User extends Model {
use Searchable ;
protected $searchable = ['name', 'comments.title'];
public function comments(){
return $this->hasMany(Post::class);
}
}
in controller
Example :
<?php
namespace App\Http\Controllers;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller as BaseController;
class Controller extends BaseController
{
use AuthorizesRequests, ValidatesRequests;
function index(Request $request)
{
$term = $request->query('term', '');
return User::search($term)->get();
}
}