[Laravel] Support for ExistsFilter
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 52/100
Hướng nghiên cứu
Bắt đầu bằng cách đọc src/Doctrine/Orm/Filter/ExistsFilter.php, sau đó kiểm tra src/Laravel/Eloquent/Filter để tìm các entry point tương ứng. Thêm phần tương đương trong Laravel để filter[optional_field]=true chọn các giá trị không null và false chọn các giá trị null, đồng thời xác minh hành vi thông qua các request collection JSON:API.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
I would like to use the ExistsFilter in Laravel a Laravel project using the JSON:API format. Currently, the ExistsFilter is only implemented under Doctrine ORM, but there is no equivalent under src/Laravel/Eloquent/Filter.
Use Case
Filtering a resource collection based on whether a nullable field is present or not, via a JSON:API-compliant request.
Example
Query:
GET /books?filter[optional_field]=true
Model:
#[
ApiResource(
operations: [
new GetCollection(
name: 'books',
parameters: [
new QueryParameter(
key: 'filter[optional_field]',
filter: ExistsFilter::class,
property: 'optional_field',
),
// ...
new QueryParameter(key: 'sort', filter: SortFilter::class),
],
),
// ...
],
),
]
class Book extends Model
{
}
Expected Outcome
This should allow filtering records where optional_field is not null (when true is passed) or is null (when false is passed), similar to how it's done in the Doctrine ORM implementation.
- Ngôn ngữ chính
- PHP
- Star
- 2.6k
- Fork
- 989
- Merge trung bình
- 1 ngày 23 giờ
- Pull request đã merge (30 ngày)
- 102
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của api-platform/core
-
JSON:API: resource schemas (`*.jsonapi`) have `properties` but no `type: object`Có thể đã có người làm @ousamabenyounes đã nhận 2 ngày trước. Đang mở
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 80/100
api-platform/core#8701 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
JSON:API: `JsonApiCollectionBaseSchemaNoPagination` declares `data` as `type: array` without `items`Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
api-platform/core#8699 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
api:openapi:export --spec-version=3.0.0 outputs `webhooks`, which is invalid in OpenAPI 3.0Có thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
api-platform/core#8690 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
api-platform/core#8680 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 68/100
api-platform/core#8725 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của api-platform/core
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
nextcloud/integration_openai#446 ·
-
bug customer-reported
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
MagnaCapax/PMSS#1101 ·
Maintainer thường phản hồi trong vòng 5 ngày
-
InvoiceSettled is answered 200 when the invoice cannot be re-fetched, so BTCPay never redelivers itĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
btcpayserver/woocommerce-greenfield-plugin#93 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
kind/bug status/triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
bug medium priority unconfirmed
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
filamentphp/filament#20760 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày