• Czas czytania ~1 min
  • 10.09.2022

Laravel Cross-Eloquent Search to pakiet do przeszukiwania wielu modeli Eloquent. Ten pakiet obsługuje sortowanie, podział na strony, zapytania z zakresem, gorliwe relacje obciążenia i przeszukiwanie pojedynczych lub wielu kolumn:

// Returns \Illuminate\Database\Eloquent\Collection
Search::new()
    ->add(Post::class, 'title')
    ->add(Video::class, 'title')
    ->get('howto');
 
// Add multiple models at once
Search::addMany([
    [Post::class, 'title'],
    [Video::class, 'title'],
])->get('howto');

Często chcesz podzielić wyniki na strony, a to pakiet sprawia, że ​​jest to proste:

Search::add(Post::class, 'title')
    ->add(Video::class, 'title')
    ->paginate()
    // or
    ->paginate(perPage: 15, pageName: 'page', page: = 1)
    ->get('build');

readme zawiera mnóstwo informacji na temat korzystania z tego pakietu, które polecam sprawdzić:

  • Search through one or more Eloquent models
  • Support for cross-model pagination
  • Search through single or multiple columns
  • Order by (cross-model) columns or by relevance
  • Use constraints and scoped queries
  • Eager load relationships for each model
  • In-database sorting of the combined result
  • Zero third-party dependencies

Możesz dowiedzieć się więcej o tym pakiecie, uzyskać pełne instrukcje instalacji i wyświetlić kod źródłowy w serwisie GitHub. Autor tego pakietu również napisał post na blogu , który zawiera więcej szczegółów o korzystaniu z tego pakietu.

Comments

No comments yet
Yurij Finiv

Yurij Finiv

Full stack

O

Professional Fullstack Developer with extensive experience in website and desktop application development. Proficient in a wide range of tools and technologies, including Bootstrap, Tailwind, HTML5, CSS3, PUG, JavaScript, Alpine.js, jQuery, PHP, MODX, and Node.js. Skilled in website development using Symfony, MODX, and Laravel. Experience: Contributed to the development and translation of MODX3 i...

O autorze CrazyBoy49z
WORK EXPERIENCE
Kontakt
Ukraine, Lutsk
+380979856297