このパッケージを使用すると、リクエストに基づいて雄弁な関係をフィルタリング、並べ替え、含めることができます。このパッケージで使用されるQueryBuilder
、Laravel のデフォルトの Eloquent ビルダーを拡張します。これは、お気に入りのメソッドとマクロがすべて引き続き使用できることを意味します。クエリ パラメーター名は、JSON API 仕様に可能な限り準拠しています。
/users?filter[name]=John
: use Spatie QueryBuilder QueryBuilder ;
$ users = QueryBuilder:: for (User::class)
-> allowedFilters ( ' name ' )
-> get ();
// all `User`s that contain the string "John" in their name
部分フィルター、完全フィルター、範囲フィルター、カスタム フィルター、無視される値、デフォルトのフィルター値などのフィルター機能の詳細を参照してください。
/users?include=posts
: $ users = QueryBuilder:: for (User::class)
-> allowedIncludes ( ' posts ' )
-> get ();
// all `User`s with their `posts` loaded
次のようなインクルード機能の詳細を参照してください: ネストされた関係、関係数、カスタム インクルードなどを含む...
/users?sort=id
: $ users = QueryBuilder:: for (User::class)
-> allowedSorts ( ' id ' )
-> get ();
// all `User`s sorted by ascending id
カスタム並べ替え、並べ替え方向などの並べ替え機能の詳細を参照してください。
$ 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
/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
フィールドの選択について詳しくは、こちらをご覧ください。
私たちはクラス最高のオープンソース パッケージの作成に多くのリソースを投資しています。有料製品のいずれかを購入することで、私たちをサポートできます。
当社のどのパッケージを使用しているかについて、故郷から葉書を送っていただき、誠にありがとうございます。当社の住所は、お問い合わせページに記載されています。受け取ったすべてのポストカードをバーチャル ポストカード ウォールに公開します。
パッケージは、composer 経由でインストールできます。
composer require spatie/laravel-query-builder
ドキュメント サイト (https://spatie.be/docs/laravel-query-builder/v5/installation-setup) でインストールに関するメモをお読みください。
ドキュメントは https://spatie.be/docs/laravel-query-builder/v5 にあります。
パッケージの使用に行き詰まっていませんか?バグが見つかりましたか?メディア ライブラリを改善するための一般的な質問や提案はありますか? GitHub でお気軽に問題を作成してください。できるだけ早く対処するよう努めます。
セキュリティに関するバグを見つけた場合は、問題トラッカーを使用する代わりに [email protected] にメールを送信してください。
詳細については、UPGRADING.md を参照してください。
composer test
最近の変更点の詳細については、CHANGELOG を参照してください。
詳細については、「貢献」を参照してください。
セキュリティに関するバグを見つけた場合は、問題トラッカーを使用する代わりに [email protected] にメールを送信してください。
MIT ライセンス (MIT)。詳細については、ライセンス ファイルを参照してください。