Sélectionner une page


Dernière version sur Packagist
Statut du test
Statut du style de code
Total téléchargements

Ce package vous permet de filtrer, trier et inclure des relations éloquentes en fonction d’une exigence. le QueryBuilder Ce package étend le constructeur Eloquent standard de Laravel. Cela signifie que toutes vos méthodes et macros préférées sont toujours disponibles. Les noms des paramètres de requête suivent ceci Spécification de l’API JSON aussi proche que possible.

Utilisation de base

Filtrer une requête en fonction d’une exigence: /users?filter[name]=John::

use SpatieQueryBuilderQueryBuilder;

$users = QueryBuilder::for(User::class)
    ->allowedFilters('name')
    ->get();

// all `User`s that contain the string "John" in their name

En savoir plus sur les fonctions de filtrage telles que: les filtres partiels, les filtres exacts, les filtres de plage, les filtres définis par l’utilisateur, les valeurs ignorées, les valeurs de filtre standard, …

Y compris les relations basées sur une demande: /users?include=posts::

$users = QueryBuilder::for(User::class)
    ->allowedIncludes('posts')
    ->get();

// all `User`s with their `posts` loaded

En savoir plus sur les fonctions d’inclusion telles que: y compris les relations imbriquées, y compris le nombre de relations, …

Trier une requête en fonction d’une exigence: /users?sort=id::

$users = QueryBuilder::for(User::class)
    ->allowedSorts('id')
    ->get();

// all `User`s sorted by ascending id

En savoir plus sur les fonctions de tri telles que: Tri défini par l’utilisateur, sens de tri, …

Fonctionne bien avec les requêtes existantes:

$query = User::where('active', true);

$userQuery = QueryBuilder::for($query) // start from an existing Builder instance
    ->withTrashed() // use your existing scopes
    ->allowedIncludes('posts', 'permissions')
    ->where('score', '>', 42); // chain on any of Laravel's query builder methods

Sélectionnez les champs pour une requête: /users?fields[users]=id,email

$users = QueryBuilder::for(User::class)
    ->allowedFields(['id', 'email'])
    ->get();

// the fetched `User`s will only have their id & email set

En savoir plus sur la sélection des champs.

Ajout d’attributs à une requête: /users?append=full_name

$users = QueryBuilder::for(User::class)
    ->allowedAppends('full_name')
    ->get()
    ->toJson();

// the resulting JSON will have the `getFullNameAttribute` attributes included

En savoir plus sur l’ajout d’attributs.

Soutenez-nous

Nous investissons beaucoup de ressources dans sa création Les meilleurs packages open source. Vous pouvez nous soutenir à travers Achetez l’un de nos produits payants.

Nous sommes très heureux que vous nous envoyiez une carte postale de votre ville natale et que vous nous indiquiez lequel de nos forfaits vous utilisez. Vous pouvez trouver notre adresse sur notre page contact. Nous publions toutes les cartes postales reçues notre mur de cartes postales virtuelles.

installation

Vous pouvez installer le package via Composer:

composer require spatie/laravel-query-builder

Lisez les instructions d’installation sur la page du document: https://docs.spatie.be/laravel-query-builder/v3/installation-setup.

Documentation

La documentation peut être trouvée sur https://docs.spatie.be/laravel-query-builder/v3.

Vous vous trouvez coincé avec le colis? Vous avez trouvé un bug? Vous avez des questions générales ou des suggestions pour améliorer la médiathèque? N’hésitez pas Publier un problème sur GitHubNous essaierons de résoudre ce problème dès que possible.

Si vous avez trouvé un bogue de sécurité, veuillez envoyer un e-mail freek@spatie.be au lieu d’utiliser le suivi des problèmes.

Effectuer la mise à niveau

S’il te plait regarde MISE À NIVEAU.md pour plus de détails.

Essai

changelog

S’il te plait regarde CHANGELOG Pour plus d’informations sur ce qui a changé récemment.

Contribuer

S’il te plait regarde CONTRIBUTION pour plus de détails.

Sécurité

Si vous rencontrez des problèmes de sécurité, veuillez envoyer un e-mail freek@spatie.be au lieu d’utiliser le suivi des problèmes.

Crédits

Licence

La licence MIT (MIT). S’il te plait regarde Fichier de licence pour plus d’informations.



Source link

Recent Posts