แพ็คเกจนี้ช่วยให้คุณสามารถกรอง จัดเรียง และรวมความสัมพันธ์ที่มีคารมคมคายตามคำขอได้ QueryBuilder
ที่ใช้ในแพ็คเกจนี้จะขยาย Eloquent builder เริ่มต้นของ Laravel ซึ่งหมายความว่าวิธีการและมาโครที่คุณชื่นชอบทั้งหมดยังคงใช้งานได้ ชื่อพารามิเตอร์การค้นหาเป็นไปตามข้อกำหนด 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 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) โปรดดูไฟล์ใบอนุญาตสำหรับข้อมูลเพิ่มเติม